// Protocol Buffers for Go with Gadgets
//
// Copyright (c) 2018, The GoGo Authors. All rights reserved.
// http://github.com/gogo/protobuf
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are
// met:
//
//     * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
//     * Redistributions in binary form must reproduce the above
// copyright notice, this list of conditions and the following disclaimer
// in the documentation and/or other materials provided with the
// distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

package proto

import (
	
	
)

func makeStdDoubleValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*float64)
			 := &float64Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*float64)
			 := &float64Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdDoubleValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*float64)
			 := &float64Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*float64)
			 := &float64Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdDoubleValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(float64)
				 := &float64Value{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(float64)
				 := &float64Value{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdDoubleValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*float64)
				 := &float64Value{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*float64)
				 := &float64Value{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdDoubleValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdDoubleValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdDoubleValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdDoubleValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdFloatValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*float32)
			 := &float32Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*float32)
			 := &float32Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdFloatValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*float32)
			 := &float32Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*float32)
			 := &float32Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdFloatValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(float32)
				 := &float32Value{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(float32)
				 := &float32Value{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdFloatValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*float32)
				 := &float32Value{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*float32)
				 := &float32Value{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdFloatValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdFloatValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdFloatValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdFloatValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &float32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdInt64ValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*int64)
			 := &int64Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*int64)
			 := &int64Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdInt64ValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*int64)
			 := &int64Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*int64)
			 := &int64Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdInt64ValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(int64)
				 := &int64Value{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(int64)
				 := &int64Value{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdInt64ValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*int64)
				 := &int64Value{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*int64)
				 := &int64Value{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdInt64ValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdInt64ValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdInt64ValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdInt64ValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdUInt64ValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*uint64)
			 := &uint64Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*uint64)
			 := &uint64Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdUInt64ValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*uint64)
			 := &uint64Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*uint64)
			 := &uint64Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdUInt64ValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(uint64)
				 := &uint64Value{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(uint64)
				 := &uint64Value{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdUInt64ValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*uint64)
				 := &uint64Value{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*uint64)
				 := &uint64Value{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdUInt64ValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdUInt64ValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdUInt64ValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdUInt64ValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint64Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdInt32ValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*int32)
			 := &int32Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*int32)
			 := &int32Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdInt32ValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*int32)
			 := &int32Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*int32)
			 := &int32Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdInt32ValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(int32)
				 := &int32Value{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(int32)
				 := &int32Value{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdInt32ValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*int32)
				 := &int32Value{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*int32)
				 := &int32Value{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdInt32ValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdInt32ValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdInt32ValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdInt32ValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &int32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdUInt32ValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*uint32)
			 := &uint32Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*uint32)
			 := &uint32Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdUInt32ValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*uint32)
			 := &uint32Value{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*uint32)
			 := &uint32Value{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdUInt32ValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(uint32)
				 := &uint32Value{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(uint32)
				 := &uint32Value{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdUInt32ValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*uint32)
				 := &uint32Value{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*uint32)
				 := &uint32Value{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdUInt32ValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdUInt32ValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdUInt32ValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdUInt32ValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &uint32Value{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdBoolValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*bool)
			 := &boolValue{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*bool)
			 := &boolValue{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdBoolValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*bool)
			 := &boolValue{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*bool)
			 := &boolValue{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdBoolValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(bool)
				 := &boolValue{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(bool)
				 := &boolValue{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdBoolValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*bool)
				 := &boolValue{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*bool)
				 := &boolValue{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdBoolValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &boolValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdBoolValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &boolValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdBoolValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &boolValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdBoolValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &boolValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdStringValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*string)
			 := &stringValue{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*string)
			 := &stringValue{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdStringValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*string)
			 := &stringValue{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*string)
			 := &stringValue{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdStringValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(string)
				 := &stringValue{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(string)
				 := &stringValue{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdStringValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*string)
				 := &stringValue{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*string)
				 := &stringValue{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdStringValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &stringValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdStringValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &stringValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdStringValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &stringValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdStringValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &stringValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}

func makeStdBytesValueMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .asPointerTo(.typ).Interface().(*[]byte)
			 := &bytesValue{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .asPointerTo(.typ).Interface().(*[]byte)
			 := &bytesValue{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdBytesValuePtrMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			if .isNil() {
				return 0
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*[]byte)
			 := &bytesValue{*}
			 := Size()
			return  + SizeVarint(uint64()) + 
		}, func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			if .isNil() {
				return , nil
			}
			 := .asPointerTo(reflect.PtrTo(.typ)).Elem().Interface().(*[]byte)
			 := &bytesValue{*}
			,  := Marshal()
			if  != nil {
				return nil, 
			}
			 = appendVarint(, )
			 = appendVarint(, uint64(len()))
			 = append(, ...)
			return , nil
		}
}

func makeStdBytesValueSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(.typ)
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().([]byte)
				 := &bytesValue{}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(.typ)
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().([]byte)
				 := &bytesValue{}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdBytesValuePtrSliceMarshaler( *marshalInfo) (sizer, marshaler) {
	return func( pointer,  int) int {
			 := .getSlice(reflect.PtrTo(.typ))
			 := 0
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*[]byte)
				 := &bytesValue{*}
				 := Size()
				 +=  + SizeVarint(uint64()) + 
			}
			return 
		},
		func( []byte,  pointer,  uint64,  bool) ([]byte, error) {
			 := .getSlice(reflect.PtrTo(.typ))
			for  := 0;  < .Len(); ++ {
				 := .Index()
				 := .Interface().(*[]byte)
				 := &bytesValue{*}
				 := Size()
				,  := Marshal()
				if  != nil {
					return nil, 
				}
				 = appendVarint(, )
				 = appendVarint(, uint64())
				 = append(, ...)
			}

			return , nil
		}
}

func makeStdBytesValueUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &bytesValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(.typ).Elem()
		.Set(reflect.ValueOf(.Value))
		return [:], nil
	}
}

func makeStdBytesValuePtrUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &bytesValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .asPointerTo(reflect.PtrTo(.typ)).Elem()
		.Set(reflect.ValueOf(&.Value))
		return [:], nil
	}
}

func makeStdBytesValuePtrSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &bytesValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(reflect.PtrTo(.typ))
		 := reflect.Append(, reflect.ValueOf(&.Value))
		.Set()
		return [:], nil
	}
}

func makeStdBytesValueSliceUnmarshaler( *unmarshalInfo,  string) unmarshaler {
	return func( []byte,  pointer,  int) ([]byte, error) {
		if  != WireBytes {
			return nil, errInternalBadWireType
		}
		,  := decodeVarint()
		if  == 0 {
			return nil, io.ErrUnexpectedEOF
		}
		 = [:]
		if  > uint64(len()) {
			return nil, io.ErrUnexpectedEOF
		}
		 := &bytesValue{}
		if  := Unmarshal([:], );  != nil {
			return nil, 
		}
		 := .getSlice(.typ)
		 := reflect.Append(, reflect.ValueOf(.Value))
		.Set()
		return [:], nil
	}
}