tlv

package
v0.0.0-...-b1f9c35 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 19, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const MaxRecordSize = 65535 // 65KB

MaxRecordSize is the maximum size of a particular record that will be parsed by a stream decoder. This value is currently chosen to the be equal to the maximum message size permitted by BOLT 1, as no record should be bigger than an entire message.

Variables

View Source
var ErrRecordTooLarge = errors.New("record is too large")

ErrRecordTooLarge signals that a decoded record has a length that is too long to parse.

View Source
var ErrStreamNotCanonical = errors.New("tlv stream is not canonical")

ErrStreamNotCanonical signals that a decoded stream does not contain records sorting by monotonically-increasing type.

View Source
var ErrTUintNotMinimal = errors.New("truncated uint not minimally encoded")

ErrTUintNotMinimal signals that decoding a truncated uint failed because the value was not minimally encoded.

View Source
var ErrVarIntNotCanonical = errors.New("decoded varint is not canonical")

ErrVarIntNotCanonical signals that the decoded varint was not minimally encoded.

Functions

func DBigSize

func DBigSize(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DBigSize decodes an uint32 or an uint64 using BigSize format. An error is returned if val is not either *uint32 or *uint64.

func DBool

func DBool(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DBool decodes a boolean. An error is returned if val is not a boolean.

func DBytes32

func DBytes32(r io.Reader, val interface{}, _ *[8]byte, l uint64) error

DBytes32 is a Decoder for 32-byte arrays. An error is returned if val is not a *[32]byte.

func DBytes33

func DBytes33(r io.Reader, val interface{}, _ *[8]byte, l uint64) error

DBytes33 is a Decoder for 33-byte arrays. An error is returned if val is not a *[33]byte.

func DBytes64

func DBytes64(r io.Reader, val interface{}, _ *[8]byte, l uint64) error

DBytes64 is an Decoder for 64-byte arrays. An error is returned if val is not a *[64]byte.

func DNOP

func DNOP(io.Reader, interface{}, *[8]byte, uint64) error

DNOP is an encoder that doesn't modify the io.Reader and never fails.

func DPubKey

func DPubKey(r io.Reader, val interface{}, _ *[8]byte, l uint64) error

DPubKey is a Decoder for *btcec.PublicKey values. An error is returned if val is not a **btcec.PublicKey.

func DTUint16

func DTUint16(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DTUint16 is an Decoder for truncated uint16 values, where leading zeros will be resurrected. An error is returned if val is not a *uint16.

func DTUint32

func DTUint32(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DTUint32 is an Decoder for truncated uint32 values, where leading zeros will be resurrected. An error is returned if val is not a *uint32.

func DTUint64

func DTUint64(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DTUint64 is an Decoder for truncated uint64 values, where leading zeros will be resurrected. An error is returned if val is not a *uint64.

func DUint8

func DUint8(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DUint8 is a Decoder for uint8 values. An error is returned if val is not a *uint8.

func DUint16

func DUint16(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DUint16 is a Decoder for uint16 values. An error is returned if val is not a *uint16.

func DUint32

func DUint32(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DUint32 is a Decoder for uint32 values. An error is returned if val is not a *uint32.

func DUint64

func DUint64(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

DUint64 is a Decoder for uint64 values. An error is returned if val is not a *uint64.

func DVarBytes

func DVarBytes(r io.Reader, val interface{}, _ *[8]byte, l uint64) error

DVarBytes is a Decoder for variable byte slices. An error is returned if val is not *[]byte.

func EBigSize

func EBigSize(w io.Writer, val interface{}, buf *[8]byte) error

EBigSize encodes an uint32 or an uint64 using BigSize format. An error is returned if val is not either *uint32 or *uint64.

func EBool

func EBool(w io.Writer, val interface{}, buf *[8]byte) error

EBool encodes a boolean. An error is returned if val is not a boolean.

func EBoolT

func EBoolT(w io.Writer, val bool, buf *[8]byte) error

EBoolT encodes a bool val to the provided io.Writer. This method is exposed so that encodings for custom bool-like types can be created without incurring an extra heap allocation.

func EBytes32

func EBytes32(w io.Writer, val interface{}, _ *[8]byte) error

EBytes32 is an Encoder for 32-byte arrays. An error is returned if val is not a *[32]byte.

func EBytes33

func EBytes33(w io.Writer, val interface{}, _ *[8]byte) error

EBytes33 is an Encoder for 33-byte arrays. An error is returned if val is not a *[33]byte.

func EBytes64

func EBytes64(w io.Writer, val interface{}, _ *[8]byte) error

EBytes64 is an Encoder for 64-byte arrays. An error is returned if val is not a *[64]byte.

func ENOP

func ENOP(io.Writer, interface{}, *[8]byte) error

ENOP is an encoder that doesn't modify the io.Writer and never fails.

func EPubKey

func EPubKey(w io.Writer, val interface{}, _ *[8]byte) error

EPubKey is an Encoder for *btcec.PublicKey values. An error is returned if val is not a **btcec.PublicKey.

func ETUint16

func ETUint16(w io.Writer, val interface{}, buf *[8]byte) error

ETUint16 is an Encoder for truncated uint16 values, where leading zeros will be omitted. An error is returned if val is not a *uint16.

func ETUint16T

func ETUint16T(w io.Writer, val uint16, buf *[8]byte) error

ETUint16T is an Encoder for truncated uint16 values, where leading zeros will be omitted. An error is returned if val is not a *uint16.

func ETUint32

func ETUint32(w io.Writer, val interface{}, buf *[8]byte) error

ETUint32 is an Encoder for truncated uint32 values, where leading zeros will be omitted. An error is returned if val is not a *uint32.

func ETUint32T

func ETUint32T(w io.Writer, val uint32, buf *[8]byte) error

ETUint32T is an Encoder for truncated uint32 values, where leading zeros will be omitted. An error is returned if val is not a *uint32.

func ETUint64

func ETUint64(w io.Writer, val interface{}, buf *[8]byte) error

ETUint64 is an Encoder for truncated uint64 values, where leading zeros will be omitted. An error is returned if val is not a *uint64.

func ETUint64T

func ETUint64T(w io.Writer, val uint64, buf *[8]byte) error

ETUint64T is an Encoder for truncated uint64 values, where leading zeros will be omitted. An error is returned if val is not a *uint64.

func EUint8

func EUint8(w io.Writer, val interface{}, buf *[8]byte) error

EUint8 is an Encoder for uint8 values. An error is returned if val is not a *uint8.

func EUint8T

func EUint8T(w io.Writer, val uint8, buf *[8]byte) error

EUint8T encodes a uint8 val to the provided io.Writer. This method is exposed so that encodings for custom uint8-like types can be created without incurring an extra heap allocation.

func EUint16

func EUint16(w io.Writer, val interface{}, buf *[8]byte) error

EUint16 is an Encoder for uint16 values. An error is returned if val is not a *uint16.

func EUint16T

func EUint16T(w io.Writer, val uint16, buf *[8]byte) error

EUint16T encodes a uint16 val to the provided io.Writer. This method is exposed so that encodings for custom uint16-like types can be created without incurring an extra heap allocation.

func EUint32

func EUint32(w io.Writer, val interface{}, buf *[8]byte) error

EUint32 is an Encoder for uint32 values. An error is returned if val is not a *uint32.

func EUint32T

func EUint32T(w io.Writer, val uint32, buf *[8]byte) error

EUint32T encodes a uint32 val to the provided io.Writer. This method is exposed so that encodings for custom uint32-like types can be created without incurring an extra heap allocation.

func EUint64

func EUint64(w io.Writer, val interface{}, buf *[8]byte) error

EUint64 is an Encoder for uint64 values. An error is returned if val is not a *uint64.

func EUint64T

func EUint64T(w io.Writer, val uint64, buf *[8]byte) error

EUint64T encodes a uint64 val to the provided io.Writer. This method is exposed so that encodings for custom uint64-like types can be created without incurring an extra heap allocation.

func EVarBytes

func EVarBytes(w io.Writer, val interface{}, _ *[8]byte) error

EVarBytes is an Encoder for variable byte slices. An error is returned if val is not *[]byte.

func ReadVarInt

func ReadVarInt(r io.Reader, buf *[8]byte) (uint64, error)

ReadVarInt reads a variable length integer from r and returns it as a uint64.

func RecordsToMap

func RecordsToMap(records []Record) (map[uint64][]byte, error)

RecordsToMap encodes a series of TLV records as raw key-value pairs in the form of a map.

func SizeTUint16

func SizeTUint16(v uint16) uint64

SizeTUint16 returns the number of bytes remaining in a uint16 after truncating the leading zeros.

func SizeTUint32

func SizeTUint32(v uint32) uint64

SizeTUint32 returns the number of bytes remaining in a uint32 after truncating the leading zeros.

func SizeTUint64

func SizeTUint64(v uint64) uint64

SizeTUint64 returns the number of bytes remaining in a uint64 after truncating the leading zeros.

func SortRecords

func SortRecords(records []Record)

SortRecords is a helper function that will sort a slice of records in place according to their type.

func VarIntSize

func VarIntSize(val uint64) uint64

VarIntSize returns the required number of bytes to encode a var int.

func WriteVarInt

func WriteVarInt(w io.Writer, val uint64, buf *[8]byte) error

WriteVarInt serializes val to w using a variable number of bytes depending on its value.

Types

type BigSizeT

type BigSizeT[T constraints.Integer] struct {
	// contains filtered or unexported fields
}

BigSizeT is a high-order type that represents a TLV record that encodes an integer as a BigSize value in the stream.

func NewBigSizeT

func NewBigSizeT[T constraints.Integer](val T) BigSizeT[T]

NewBigSizeT creates a new BigSizeT type from a given integer type.

func (BigSizeT[T]) Int

func (b BigSizeT[T]) Int() T

Int returns the underlying integer value of the BigSize record.

func (*BigSizeT[T]) Record

func (b *BigSizeT[T]) Record() Record

Record returns the underlying record interface for the record type.

type Blob

type Blob = []byte

Blob is a type alias for a byte slice. It's used to indicate that a slice of bytes is actually an encoded TLV stream.

type Decoder

type Decoder func(r io.Reader, val interface{}, buf *[8]byte, l uint64) error

Decoder is a signature for methods that can decode TLV values. An error should be returned if the Decoder cannot support the underlying type of val. The provided scratch buffer must be non-nil.

type Encoder

type Encoder func(w io.Writer, val interface{}, buf *[8]byte) error

Encoder is a signature for methods that can encode TLV values. An error should be returned if the Encoder cannot support the underlying type of val. The provided scratch buffer must be non-nil.

func StubEncoder

func StubEncoder(v []byte) Encoder

StubEncoder is a factory function that makes a stub tlv.Encoder out of a raw value. We can use this to make a record that can be encoded when we don't actually know it's true underlying value, and only it serialization.

type ErrTypeForDecoding

type ErrTypeForDecoding struct {
	// contains filtered or unexported fields
}

ErrTypeForDecoding signals that an incorrect type was passed to a Decoder or that the expected length of the encoding is different from that required by the expected type.

func NewTypeForDecodingErr

func NewTypeForDecodingErr(val interface{}, expType string,
	valLength, expLength uint64) ErrTypeForDecoding

NewTypeForDecodingErr creates a new ErrTypeForDecoding given the incorrect val and expected type, or the mismatch in their expected lengths.

func (ErrTypeForDecoding) Error

func (e ErrTypeForDecoding) Error() string

Error returns a human-readable description of the type mismatch.

type ErrTypeForEncoding

type ErrTypeForEncoding struct {
	// contains filtered or unexported fields
}

ErrTypeForEncoding signals that an incorrect type was passed to an Encoder.

func NewTypeForEncodingErr

func NewTypeForEncodingErr(val interface{}, expType string) ErrTypeForEncoding

NewTypeForEncodingErr creates a new ErrTypeForEncoding given the incorrect val and the expected type.

func (ErrTypeForEncoding) Error

func (e ErrTypeForEncoding) Error() string

Error returns a human-readable description of the type mismatch.

type OptionalRecordT

type OptionalRecordT[T TlvType, V any] struct {
	fn.Option[RecordT[T, V]]
}

OptionalRecordT is a high-order type that represents an optional TLV record. This can be used when a TLV record doesn't always need to be present (ok to be odd).

func SomeRecordT

func SomeRecordT[T TlvType, V any](record RecordT[T, V]) OptionalRecordT[T, V]

SomeRecordT creates a new OptionalRecordT type from a given RecordT type.

func (*OptionalRecordT[T, V]) TlvType

func (o *OptionalRecordT[T, V]) TlvType() Type

TlvType returns the type of the record. This is the value used to identify this type on the wire. This value is bound to the specified TlvType type param.

func (*OptionalRecordT[T, V]) UnwrapOrErrV

func (o *OptionalRecordT[T, V]) UnwrapOrErrV(err error) (V, error)

UnwrapOrErrV is used to extract a value from an option, if the option is empty, then the specified error is returned directly. This gives the underlying value of the record, instead of the record itself.

func (*OptionalRecordT[T, V]) UnwrapOrFailV

func (o *OptionalRecordT[T, V]) UnwrapOrFailV(t *testing.T) V

UnwrapOrFailV is used to extract a value from an option within a test context. If the option is None, then the test fails. This gives the underlying value of the record, rather then the record itself.

func (*OptionalRecordT[T, V]) ValOpt

func (o *OptionalRecordT[T, V]) ValOpt() fn.Option[V]

ValOpt returns an Option of the underlying value. This can be used to chain other option related methods to avoid needing to first go through the outer record.

func (*OptionalRecordT[T, V]) WhenSomeV

func (o *OptionalRecordT[T, V]) WhenSomeV(f func(V))

WhenSomeV executes the given function if the optional record is present. This operates on the inner most type, V, which is the value of the record.

func (*OptionalRecordT[T, V]) Zero

func (o *OptionalRecordT[T, V]) Zero() RecordT[T, V]

Zero returns a zero value of the record type.

type Primitive

type Primitive interface {
	constraints.Unsigned | ~[]byte | ~[32]byte | ~[33]byte | ~bool |
		~*btcec.PublicKey | ~[64]byte
}

Primitive is a type constraint that capture the set of "primitive" types, which are the built in stdlib types, and type defs of those types

type Record

type Record struct {
	// contains filtered or unexported fields
}

Record holds the required information to encode or decode a TLV record.

func MakeBigSizeRecord

func MakeBigSizeRecord[T constraintUint32Or64](typ Type, val *T) Record

MakeBigSizeRecord creates a tlv record using the BigSize format. The only allowed values are uint64 and uint32.

NOTE: for uint32, we would only gain space reduction if the encoded value is no greater than 65535, which requires at most 3 bytes to encode.

func MakeDynamicRecord

func MakeDynamicRecord(typ Type, val interface{}, sizeFunc SizeFunc,
	encoder Encoder, decoder Decoder) Record

MakeDynamicRecord creates a record whose size may vary, and will be determined at the time of encoding via sizeFunc.

func MakePrimitiveRecord

func MakePrimitiveRecord(typ Type, val interface{}) Record

MakePrimitiveRecord creates a record for common types.

func MakeStaticRecord

func MakeStaticRecord(typ Type, val interface{}, size uint64, encoder Encoder,
	decoder Decoder) Record

MakeStaticRecord creates a record for a field of fixed-size

func MapToRecords

func MapToRecords(tlvMap map[uint64][]byte) []Record

MapToRecords encodes the passed TLV map as a series of regular tlv.Record instances. The resulting set of records will be returned in sorted order by their type.

func (*Record) Decode

func (f *Record) Decode(r io.Reader, l uint64) error

Decode read in the TLV record from the passed reader. This is useful when a caller wants decode a *single* TLV record, outside the context of the Stream struct.

func (*Record) Encode

func (f *Record) Encode(w io.Writer) error

Encode writes out the TLV record to the passed writer. This is useful when a caller wants to obtain the raw encoding of a *single* TLV record, outside the context of the Stream struct.

func (*Record) Record

func (f *Record) Record() Record

Record (the function) is the trivial implementation of RecordProducer for Record (the type). This makes it seamless to mix primitive and dynamic records together in the same collections.

NOTE: Part of the RecordProducer interface.

func (*Record) Size

func (f *Record) Size() uint64

Size returns the size of the Record's value. If no static size is known, the dynamic size will be evaluated.

func (*Record) Type

func (f *Record) Type() Type

Type returns the type of the underlying TLV record.

type RecordProducer

type RecordProducer interface {
	// Record returns a Record that can be used to encode or decode the
	// backing object.
	Record() Record
}

RecorderProducer is an interface for objects that can produce a Record object capable of encoding and/or decoding the RecordProducer as a Record.

type RecordProducerT

type RecordProducerT[T any] interface {
	RecordProducer

	*T
}

RecordProducerT is a type-aware wrapper around the normal RecordProducer interface.

type RecordT

type RecordT[T TlvType, V any] struct {

	// val is the value of the underlying record. Go doesn't let us just
	// embed the type param as a struct field, so we need an intermediate
	// variable.
	Val V
	// contains filtered or unexported fields
}

RecordT is a high-order type makes it easy to encode known "primitive" types as TLV records.

func NewPrimitiveRecord

func NewPrimitiveRecord[T TlvType, V Primitive](val V) RecordT[T, V]

NewPrimitiveRecord creates a new RecordT type from a given primitive type.

func NewRecordT

func NewRecordT[T TlvType, K any, V RecordProducerT[K]](
	record K,
) RecordT[T, K]

NewRecordT creates a new RecordT type from a given RecordProducer type. This is useful to wrap a given record in this utility type, which also serves as an extra type annotation. The underlying type of the record is retained.

func ZeroRecordT

func ZeroRecordT[T TlvType, V any]() RecordT[T, V]

ZeroRecordT returns a zero value of the RecordT type.

func (*RecordT[T, V]) Record

func (t *RecordT[T, V]) Record() Record

Record returns the underlying record interface for the record type.

func (*RecordT[T, V]) TlvType

func (t *RecordT[T, V]) TlvType() Type

TlvType returns the type of the record. This is the value used to identify this type on the wire. This value is bound to the specified TlvType type param.

func (*RecordT[T, V]) Zero

func (t *RecordT[T, V]) Zero() RecordT[T, V]

Zero returns a zero value of the record type.

type SizeFunc

type SizeFunc func() uint64

SizeFunc is a function that can compute the length of a given field. Since the size of the underlying field can change, this allows the size of the field to be evaluated at the time of encoding.

func SizeBigSize

func SizeBigSize[T constraintUint32Or64](val *T) SizeFunc

SizeBigSize returns a SizeFunc that can compute the length of BigSize.

func SizeVarBytes

func SizeVarBytes(e *[]byte) SizeFunc

SizeVarBytes returns a SizeFunc that can compute the length of a byte slice.

type Stream

type Stream struct {
	// contains filtered or unexported fields
}

Stream defines a TLV stream that can be used for encoding or decoding a set of TLV Records.

func MustNewStream

func MustNewStream(records ...Record) *Stream

MustNewStream creates a new TLV Stream given an encoding codec, a decoding codec, and a set of known records. If an error is encountered in creating the stream, this method will panic instead of returning the error.

func NewStream

func NewStream(records ...Record) (*Stream, error)

NewStream creates a new TLV Stream given an encoding codec, a decoding codec, and a set of known records.

func (*Stream) Decode

func (s *Stream) Decode(r io.Reader) error

Decode deserializes TLV Stream from the passed io.Reader for non-P2P settings. The Stream will inspect each record that is parsed and check to see if it has a corresponding Record to facilitate deserialization of that field. If the record is unknown, the Stream will discard the record's bytes and proceed to the subsequent record.

Each record has the following format:

[varint: type]
[varint: length]
[length: value]

A series of (possibly zero) records are concatenated into a stream, this example contains two records:

(t: 0x01, l: 0x04, v: 0xff, 0xff, 0xff, 0xff)
(t: 0x02, l: 0x01, v: 0x01)

This method asserts that the byte stream is canonical, namely that each record is unique and that all records are sorted in ascending order. An ErrNotCanonicalStream error is returned if the encoded TLV stream is not.

We permit an io.EOF error only when reading the type byte which signals that the last record was read cleanly and we should stop parsing. All other io.EOF or io.ErrUnexpectedEOF errors are returned.

func (*Stream) DecodeP2P

func (s *Stream) DecodeP2P(r io.Reader) error

DecodeP2P is identical to Decode except that the maximum record size is capped at 65535.

func (*Stream) DecodeWithParsedTypes

func (s *Stream) DecodeWithParsedTypes(r io.Reader) (TypeMap, error)

DecodeWithParsedTypes is identical to Decode, but if successful, returns a TypeMap containing the types of all records that were decoded or ignored from the stream.

func (*Stream) DecodeWithParsedTypesP2P

func (s *Stream) DecodeWithParsedTypesP2P(r io.Reader) (TypeMap, error)

DecodeWithParsedTypesP2P is identical to DecodeWithParsedTypes except that the record size is capped at 65535. This should only be called from a p2p setting where untrusted input is being deserialized.

func (*Stream) Encode

func (s *Stream) Encode(w io.Writer) error

Encode writes a Stream to the passed io.Writer. Each of the Records known to the Stream is written in ascending order of their type so as to be canonical.

The stream is constructed by concatenating the individual, serialized Records where each record has the following format:

[varint: type]
[varint: length]
[length: value]

An error is returned if the io.Writer fails to accept bytes from the encoding, and nothing else. The ordering of the Records is asserted upon the creation of a Stream, and thus the output will be by definition canonical.

type TlvType

type TlvType interface {
	// TypeVal returns the integer TLV type that this TlvType struct
	// instance maps to.
	TypeVal() Type
	// contains filtered or unexported methods
}

TlvType is an interface used to enable binding the integer type of a TLV record to the type at compile time.

type TlvType0

type TlvType0 = *tlvType0

type TlvType1

type TlvType1 = *tlvType1

type TlvType2

type TlvType2 = *tlvType2

type TlvType3

type TlvType3 = *tlvType3

type TlvType4

type TlvType4 = *tlvType4

type TlvType5

type TlvType5 = *tlvType5

type TlvType6

type TlvType6 = *tlvType6

type TlvType7

type TlvType7 = *tlvType7

type TlvType8

type TlvType8 = *tlvType8

type TlvType9

type TlvType9 = *tlvType9

type TlvType10

type TlvType10 = *tlvType10

type TlvType11

type TlvType11 = *tlvType11

type TlvType12

type TlvType12 = *tlvType12

type TlvType13

type TlvType13 = *tlvType13

type TlvType14

type TlvType14 = *tlvType14

type TlvType15

type TlvType15 = *tlvType15

type TlvType16

type TlvType16 = *tlvType16

type TlvType17

type TlvType17 = *tlvType17

type TlvType18

type TlvType18 = *tlvType18

type TlvType19

type TlvType19 = *tlvType19

type TlvType20

type TlvType20 = *tlvType20

type TlvType21

type TlvType21 = *tlvType21

type TlvType22

type TlvType22 = *tlvType22

type TlvType23

type TlvType23 = *tlvType23

type TlvType24

type TlvType24 = *tlvType24

type TlvType25

type TlvType25 = *tlvType25

type TlvType26

type TlvType26 = *tlvType26

type TlvType27

type TlvType27 = *tlvType27

type TlvType28

type TlvType28 = *tlvType28

type TlvType29

type TlvType29 = *tlvType29

type TlvType30

type TlvType30 = *tlvType30

type TlvType31

type TlvType31 = *tlvType31

type TlvType32

type TlvType32 = *tlvType32

type TlvType33

type TlvType33 = *tlvType33

type TlvType34

type TlvType34 = *tlvType34

type TlvType35

type TlvType35 = *tlvType35

type TlvType36

type TlvType36 = *tlvType36

type TlvType37

type TlvType37 = *tlvType37

type TlvType38

type TlvType38 = *tlvType38

type TlvType39

type TlvType39 = *tlvType39

type TlvType40

type TlvType40 = *tlvType40

type TlvType41

type TlvType41 = *tlvType41

type TlvType42

type TlvType42 = *tlvType42

type TlvType43

type TlvType43 = *tlvType43

type TlvType44

type TlvType44 = *tlvType44

type TlvType45

type TlvType45 = *tlvType45

type TlvType46

type TlvType46 = *tlvType46

type TlvType47

type TlvType47 = *tlvType47

type TlvType48

type TlvType48 = *tlvType48

type TlvType49

type TlvType49 = *tlvType49

type TlvType50

type TlvType50 = *tlvType50

type TlvType51

type TlvType51 = *tlvType51

type TlvType52

type TlvType52 = *tlvType52

type TlvType53

type TlvType53 = *tlvType53

type TlvType54

type TlvType54 = *tlvType54

type TlvType55

type TlvType55 = *tlvType55

type TlvType56

type TlvType56 = *tlvType56

type TlvType57

type TlvType57 = *tlvType57

type TlvType58

type TlvType58 = *tlvType58

type TlvType59

type TlvType59 = *tlvType59

type TlvType60

type TlvType60 = *tlvType60

type TlvType61

type TlvType61 = *tlvType61

type TlvType62

type TlvType62 = *tlvType62

type TlvType63

type TlvType63 = *tlvType63

type TlvType64

type TlvType64 = *tlvType64

type TlvType65

type TlvType65 = *tlvType65

type TlvType66

type TlvType66 = *tlvType66

type TlvType67

type TlvType67 = *tlvType67

type TlvType68

type TlvType68 = *tlvType68

type TlvType69

type TlvType69 = *tlvType69

type TlvType70

type TlvType70 = *tlvType70

type TlvType71

type TlvType71 = *tlvType71

type TlvType72

type TlvType72 = *tlvType72

type TlvType73

type TlvType73 = *tlvType73

type TlvType74

type TlvType74 = *tlvType74

type TlvType75

type TlvType75 = *tlvType75

type TlvType76

type TlvType76 = *tlvType76

type TlvType77

type TlvType77 = *tlvType77

type TlvType78

type TlvType78 = *tlvType78

type TlvType79

type TlvType79 = *tlvType79

type TlvType80

type TlvType80 = *tlvType80

type TlvType81

type TlvType81 = *tlvType81

type TlvType82

type TlvType82 = *tlvType82

type TlvType83

type TlvType83 = *tlvType83

type TlvType84

type TlvType84 = *tlvType84

type TlvType85

type TlvType85 = *tlvType85

type TlvType86

type TlvType86 = *tlvType86

type TlvType87

type TlvType87 = *tlvType87

type TlvType88

type TlvType88 = *tlvType88

type TlvType89

type TlvType89 = *tlvType89

type TlvType90

type TlvType90 = *tlvType90

type TlvType91

type TlvType91 = *tlvType91

type TlvType92

type TlvType92 = *tlvType92

type TlvType93

type TlvType93 = *tlvType93

type TlvType94

type TlvType94 = *tlvType94

type TlvType95

type TlvType95 = *tlvType95

type TlvType96

type TlvType96 = *tlvType96

type TlvType97

type TlvType97 = *tlvType97

type TlvType98

type TlvType98 = *tlvType98

type TlvType99

type TlvType99 = *tlvType99

type TlvType100

type TlvType100 = *tlvType100

type TlvType101

type TlvType101 = *tlvType101

type TlvType102

type TlvType102 = *tlvType102

type TlvType103

type TlvType103 = *tlvType103

type TlvType104

type TlvType104 = *tlvType104

type TlvType105

type TlvType105 = *tlvType105

type TlvType106

type TlvType106 = *tlvType106

type TlvType107

type TlvType107 = *tlvType107

type TlvType108

type TlvType108 = *tlvType108

type TlvType109

type TlvType109 = *tlvType109

type TlvType110

type TlvType110 = *tlvType110

type TlvType111

type TlvType111 = *tlvType111

type TlvType112

type TlvType112 = *tlvType112

type TlvType113

type TlvType113 = *tlvType113

type TlvType114

type TlvType114 = *tlvType114

type TlvType115

type TlvType115 = *tlvType115

type TlvType116

type TlvType116 = *tlvType116

type TlvType117

type TlvType117 = *tlvType117

type TlvType118

type TlvType118 = *tlvType118

type TlvType119

type TlvType119 = *tlvType119

type TlvType120

type TlvType120 = *tlvType120

type TlvType121

type TlvType121 = *tlvType121

type TlvType122

type TlvType122 = *tlvType122

type TlvType123

type TlvType123 = *tlvType123

type TlvType124

type TlvType124 = *tlvType124

type TlvType125

type TlvType125 = *tlvType125

type TlvType126

type TlvType126 = *tlvType126

type TlvType127

type TlvType127 = *tlvType127

type TlvType128

type TlvType128 = *tlvType128

type TlvType129

type TlvType129 = *tlvType129

type TlvType130

type TlvType130 = *tlvType130

type TlvType131

type TlvType131 = *tlvType131

type TlvType132

type TlvType132 = *tlvType132

type TlvType133

type TlvType133 = *tlvType133

type TlvType134

type TlvType134 = *tlvType134

type TlvType135

type TlvType135 = *tlvType135

type TlvType136

type TlvType136 = *tlvType136

type TlvType137

type TlvType137 = *tlvType137

type TlvType138

type TlvType138 = *tlvType138

type TlvType139

type TlvType139 = *tlvType139

type TlvType140

type TlvType140 = *tlvType140

type TlvType141

type TlvType141 = *tlvType141

type TlvType142

type TlvType142 = *tlvType142

type TlvType143

type TlvType143 = *tlvType143

type TlvType144

type TlvType144 = *tlvType144

type TlvType145

type TlvType145 = *tlvType145

type TlvType146

type TlvType146 = *tlvType146

type TlvType147

type TlvType147 = *tlvType147

type TlvType148

type TlvType148 = *tlvType148

type TlvType149

type TlvType149 = *tlvType149

type TlvType150

type TlvType150 = *tlvType150

type TlvType151

type TlvType151 = *tlvType151

type TlvType152

type TlvType152 = *tlvType152

type TlvType153

type TlvType153 = *tlvType153

type TlvType154

type TlvType154 = *tlvType154

type TlvType155

type TlvType155 = *tlvType155

type TlvType156

type TlvType156 = *tlvType156

type TlvType157

type TlvType157 = *tlvType157

type TlvType158

type TlvType158 = *tlvType158

type TlvType159

type TlvType159 = *tlvType159

type TlvType160

type TlvType160 = *tlvType160

type TlvType161

type TlvType161 = *tlvType161

type TlvType162

type TlvType162 = *tlvType162

type TlvType163

type TlvType163 = *tlvType163

type TlvType164

type TlvType164 = *tlvType164

type TlvType165

type TlvType165 = *tlvType165

type TlvType166

type TlvType166 = *tlvType166

type TlvType167

type TlvType167 = *tlvType167

type TlvType168

type TlvType168 = *tlvType168

type TlvType169

type TlvType169 = *tlvType169

type TlvType170

type TlvType170 = *tlvType170

type TlvType171

type TlvType171 = *tlvType171

type TlvType172

type TlvType172 = *tlvType172

type TlvType173

type TlvType173 = *tlvType173

type TlvType174

type TlvType174 = *tlvType174

type TlvType175

type TlvType175 = *tlvType175

type TlvType176

type TlvType176 = *tlvType176

type TlvType177

type TlvType177 = *tlvType177

type TlvType178

type TlvType178 = *tlvType178

type TlvType179

type TlvType179 = *tlvType179

type TlvType180

type TlvType180 = *tlvType180

type TlvType181

type TlvType181 = *tlvType181

type TlvType182

type TlvType182 = *tlvType182

type TlvType183

type TlvType183 = *tlvType183

type TlvType184

type TlvType184 = *tlvType184

type TlvType185

type TlvType185 = *tlvType185

type TlvType186

type TlvType186 = *tlvType186

type TlvType187

type TlvType187 = *tlvType187

type TlvType188

type TlvType188 = *tlvType188

type TlvType189

type TlvType189 = *tlvType189

type TlvType190

type TlvType190 = *tlvType190

type TlvType191

type TlvType191 = *tlvType191

type TlvType192

type TlvType192 = *tlvType192

type TlvType193

type TlvType193 = *tlvType193

type TlvType194

type TlvType194 = *tlvType194

type TlvType195

type TlvType195 = *tlvType195

type TlvType196

type TlvType196 = *tlvType196

type TlvType197

type TlvType197 = *tlvType197

type TlvType198

type TlvType198 = *tlvType198

type TlvType199

type TlvType199 = *tlvType199

type TlvType200

type TlvType200 = *tlvType200

type TlvType201

type TlvType201 = *tlvType201

type TlvType202

type TlvType202 = *tlvType202

type TlvType203

type TlvType203 = *tlvType203

type TlvType204

type TlvType204 = *tlvType204

type TlvType205

type TlvType205 = *tlvType205

type TlvType206

type TlvType206 = *tlvType206

type TlvType207

type TlvType207 = *tlvType207

type TlvType208

type TlvType208 = *tlvType208

type TlvType209

type TlvType209 = *tlvType209

type TlvType210

type TlvType210 = *tlvType210

type TlvType211

type TlvType211 = *tlvType211

type TlvType212

type TlvType212 = *tlvType212

type TlvType213

type TlvType213 = *tlvType213

type TlvType214

type TlvType214 = *tlvType214

type TlvType215

type TlvType215 = *tlvType215

type TlvType216

type TlvType216 = *tlvType216

type TlvType217

type TlvType217 = *tlvType217

type TlvType218

type TlvType218 = *tlvType218

type TlvType219

type TlvType219 = *tlvType219

type TlvType220

type TlvType220 = *tlvType220

type TlvType221

type TlvType221 = *tlvType221

type TlvType222

type TlvType222 = *tlvType222

type TlvType223

type TlvType223 = *tlvType223

type TlvType224

type TlvType224 = *tlvType224

type TlvType225

type TlvType225 = *tlvType225

type TlvType226

type TlvType226 = *tlvType226

type TlvType227

type TlvType227 = *tlvType227

type TlvType228

type TlvType228 = *tlvType228

type TlvType229

type TlvType229 = *tlvType229

type TlvType230

type TlvType230 = *tlvType230

type TlvType231

type TlvType231 = *tlvType231

type TlvType232

type TlvType232 = *tlvType232

type TlvType233

type TlvType233 = *tlvType233

type TlvType234

type TlvType234 = *tlvType234

type TlvType235

type TlvType235 = *tlvType235

type TlvType236

type TlvType236 = *tlvType236

type TlvType237

type TlvType237 = *tlvType237

type TlvType238

type TlvType238 = *tlvType238

type TlvType239

type TlvType239 = *tlvType239

type TlvType240

type TlvType240 = *tlvType240

type TlvType241

type TlvType241 = *tlvType241

type TlvType242

type TlvType242 = *tlvType242

type TlvType243

type TlvType243 = *tlvType243

type TlvType244

type TlvType244 = *tlvType244

type TlvType245

type TlvType245 = *tlvType245

type TlvType246

type TlvType246 = *tlvType246

type TlvType247

type TlvType247 = *tlvType247

type TlvType248

type TlvType248 = *tlvType248

type TlvType249

type TlvType249 = *tlvType249

type TlvType250

type TlvType250 = *tlvType250

type TlvType251

type TlvType251 = *tlvType251

type TlvType252

type TlvType252 = *tlvType252

type TlvType253

type TlvType253 = *tlvType253

type TlvType254

type TlvType254 = *tlvType254

type TlvType255

type TlvType255 = *tlvType255

type TlvType256

type TlvType256 = *tlvType256

type TlvType257

type TlvType257 = *tlvType257

type TlvType258

type TlvType258 = *tlvType258

type TlvType259

type TlvType259 = *tlvType259

type TlvType260

type TlvType260 = *tlvType260

type TlvType261

type TlvType261 = *tlvType261

type TlvType262

type TlvType262 = *tlvType262

type TlvType263

type TlvType263 = *tlvType263

type TlvType264

type TlvType264 = *tlvType264

type TlvType265

type TlvType265 = *tlvType265

type TlvType266

type TlvType266 = *tlvType266

type TlvType267

type TlvType267 = *tlvType267

type TlvType268

type TlvType268 = *tlvType268

type TlvType269

type TlvType269 = *tlvType269

type TlvType270

type TlvType270 = *tlvType270

type TlvType271

type TlvType271 = *tlvType271

type TlvType272

type TlvType272 = *tlvType272

type TlvType273

type TlvType273 = *tlvType273

type TlvType274

type TlvType274 = *tlvType274

type TlvType275

type TlvType275 = *tlvType275

type TlvType276

type TlvType276 = *tlvType276

type TlvType277

type TlvType277 = *tlvType277

type TlvType278

type TlvType278 = *tlvType278

type TlvType279

type TlvType279 = *tlvType279

type TlvType280

type TlvType280 = *tlvType280

type TlvType281

type TlvType281 = *tlvType281

type TlvType282

type TlvType282 = *tlvType282

type TlvType283

type TlvType283 = *tlvType283

type TlvType284

type TlvType284 = *tlvType284

type TlvType285

type TlvType285 = *tlvType285

type TlvType286

type TlvType286 = *tlvType286

type TlvType287

type TlvType287 = *tlvType287

type TlvType288

type TlvType288 = *tlvType288

type TlvType289

type TlvType289 = *tlvType289

type TlvType290

type TlvType290 = *tlvType290

type TlvType291

type TlvType291 = *tlvType291

type TlvType292

type TlvType292 = *tlvType292

type TlvType293

type TlvType293 = *tlvType293

type TlvType294

type TlvType294 = *tlvType294

type TlvType295

type TlvType295 = *tlvType295

type TlvType296

type TlvType296 = *tlvType296

type TlvType297

type TlvType297 = *tlvType297

type TlvType298

type TlvType298 = *tlvType298

type TlvType299

type TlvType299 = *tlvType299

type TlvType300

type TlvType300 = *tlvType300

type TlvType55555

type TlvType55555 = *tlvType55555

type TlvType65536

type TlvType65536 = *tlvType65536

type TlvType65537

type TlvType65537 = *tlvType65537

type TlvType65538

type TlvType65538 = *tlvType65538

type TlvType65539

type TlvType65539 = *tlvType65539

type TlvType65540

type TlvType65540 = *tlvType65540

type TlvType65541

type TlvType65541 = *tlvType65541

type TlvType65542

type TlvType65542 = *tlvType65542

type TlvType65543

type TlvType65543 = *tlvType65543

type TlvType65544

type TlvType65544 = *tlvType65544

type TlvType65545

type TlvType65545 = *tlvType65545

type TlvType65546

type TlvType65546 = *tlvType65546

type TlvType65547

type TlvType65547 = *tlvType65547

type TlvType65548

type TlvType65548 = *tlvType65548

type TlvType65549

type TlvType65549 = *tlvType65549

type TlvType65550

type TlvType65550 = *tlvType65550

type TlvType65551

type TlvType65551 = *tlvType65551

type TlvType65552

type TlvType65552 = *tlvType65552

type TlvType65553

type TlvType65553 = *tlvType65553

type TlvType65554

type TlvType65554 = *tlvType65554

type TlvType65555

type TlvType65555 = *tlvType65555

type TlvType65556

type TlvType65556 = *tlvType65556

type TlvType65557

type TlvType65557 = *tlvType65557

type TlvType65558

type TlvType65558 = *tlvType65558

type TlvType65559

type TlvType65559 = *tlvType65559

type TlvType65560

type TlvType65560 = *tlvType65560

type TlvType65561

type TlvType65561 = *tlvType65561

type TlvType65562

type TlvType65562 = *tlvType65562

type TlvType65563

type TlvType65563 = *tlvType65563

type TlvType65564

type TlvType65564 = *tlvType65564

type TlvType65565

type TlvType65565 = *tlvType65565

type TlvType65566

type TlvType65566 = *tlvType65566

type TlvType65567

type TlvType65567 = *tlvType65567

type TlvType65568

type TlvType65568 = *tlvType65568

type TlvType65569

type TlvType65569 = *tlvType65569

type TlvType65570

type TlvType65570 = *tlvType65570

type TlvType65571

type TlvType65571 = *tlvType65571

type TlvType65572

type TlvType65572 = *tlvType65572

type TlvType65573

type TlvType65573 = *tlvType65573

type TlvType65574

type TlvType65574 = *tlvType65574

type TlvType65575

type TlvType65575 = *tlvType65575

type TlvType65576

type TlvType65576 = *tlvType65576

type TlvType65577

type TlvType65577 = *tlvType65577

type TlvType65578

type TlvType65578 = *tlvType65578

type TlvType65579

type TlvType65579 = *tlvType65579

type TlvType65580

type TlvType65580 = *tlvType65580

type TlvType65581

type TlvType65581 = *tlvType65581

type TlvType65582

type TlvType65582 = *tlvType65582

type TlvType65583

type TlvType65583 = *tlvType65583

type TlvType65584

type TlvType65584 = *tlvType65584

type TlvType65585

type TlvType65585 = *tlvType65585

type TlvType65586

type TlvType65586 = *tlvType65586

type TlvType65587

type TlvType65587 = *tlvType65587

type TlvType65588

type TlvType65588 = *tlvType65588

type TlvType65589

type TlvType65589 = *tlvType65589

type TlvType65590

type TlvType65590 = *tlvType65590

type TlvType65591

type TlvType65591 = *tlvType65591

type TlvType65592

type TlvType65592 = *tlvType65592

type TlvType65593

type TlvType65593 = *tlvType65593

type TlvType65594

type TlvType65594 = *tlvType65594

type TlvType65595

type TlvType65595 = *tlvType65595

type TlvType65596

type TlvType65596 = *tlvType65596

type TlvType65597

type TlvType65597 = *tlvType65597

type TlvType65598

type TlvType65598 = *tlvType65598

type TlvType65599

type TlvType65599 = *tlvType65599

type TlvType65600

type TlvType65600 = *tlvType65600

type TlvType65601

type TlvType65601 = *tlvType65601

type TlvType65602

type TlvType65602 = *tlvType65602

type TlvType65603

type TlvType65603 = *tlvType65603

type TlvType65604

type TlvType65604 = *tlvType65604

type TlvType65605

type TlvType65605 = *tlvType65605

type TlvType65606

type TlvType65606 = *tlvType65606

type TlvType65607

type TlvType65607 = *tlvType65607

type TlvType65608

type TlvType65608 = *tlvType65608

type TlvType65609

type TlvType65609 = *tlvType65609

type TlvType65610

type TlvType65610 = *tlvType65610

type TlvType65611

type TlvType65611 = *tlvType65611

type TlvType65612

type TlvType65612 = *tlvType65612

type TlvType65613

type TlvType65613 = *tlvType65613

type TlvType65614

type TlvType65614 = *tlvType65614

type TlvType65615

type TlvType65615 = *tlvType65615

type TlvType65616

type TlvType65616 = *tlvType65616

type TlvType65617

type TlvType65617 = *tlvType65617

type TlvType65618

type TlvType65618 = *tlvType65618

type TlvType65619

type TlvType65619 = *tlvType65619

type TlvType65620

type TlvType65620 = *tlvType65620

type TlvType65621

type TlvType65621 = *tlvType65621

type TlvType65622

type TlvType65622 = *tlvType65622

type TlvType65623

type TlvType65623 = *tlvType65623

type TlvType65624

type TlvType65624 = *tlvType65624

type TlvType65625

type TlvType65625 = *tlvType65625

type TlvType65626

type TlvType65626 = *tlvType65626

type TlvType65627

type TlvType65627 = *tlvType65627

type TlvType65628

type TlvType65628 = *tlvType65628

type TlvType65629

type TlvType65629 = *tlvType65629

type TlvType65630

type TlvType65630 = *tlvType65630

type TlvType65631

type TlvType65631 = *tlvType65631

type TlvType65632

type TlvType65632 = *tlvType65632

type TlvType65633

type TlvType65633 = *tlvType65633

type TlvType65634

type TlvType65634 = *tlvType65634

type TlvType65635

type TlvType65635 = *tlvType65635

type TlvType65636

type TlvType65636 = *tlvType65636

type TlvType65637

type TlvType65637 = *tlvType65637

type TlvType65638

type TlvType65638 = *tlvType65638

type TlvType65639

type TlvType65639 = *tlvType65639

type TlvType65640

type TlvType65640 = *tlvType65640

type TlvType65641

type TlvType65641 = *tlvType65641

type TlvType65642

type TlvType65642 = *tlvType65642

type TlvType65643

type TlvType65643 = *tlvType65643

type TlvType65644

type TlvType65644 = *tlvType65644

type TlvType65645

type TlvType65645 = *tlvType65645

type TlvType65646

type TlvType65646 = *tlvType65646

type TlvType65647

type TlvType65647 = *tlvType65647

type TlvType65648

type TlvType65648 = *tlvType65648

type TlvType65649

type TlvType65649 = *tlvType65649

type TlvType65650

type TlvType65650 = *tlvType65650

type TlvType65651

type TlvType65651 = *tlvType65651

type TlvType65652

type TlvType65652 = *tlvType65652

type TlvType65653

type TlvType65653 = *tlvType65653

type TlvType65654

type TlvType65654 = *tlvType65654

type TlvType65655

type TlvType65655 = *tlvType65655

type TlvType65656

type TlvType65656 = *tlvType65656

type TlvType65657

type TlvType65657 = *tlvType65657

type TlvType65658

type TlvType65658 = *tlvType65658

type TlvType65659

type TlvType65659 = *tlvType65659

type TlvType65660

type TlvType65660 = *tlvType65660

type TlvType65661

type TlvType65661 = *tlvType65661

type TlvType65662

type TlvType65662 = *tlvType65662

type TlvType65663

type TlvType65663 = *tlvType65663

type TlvType65664

type TlvType65664 = *tlvType65664

type TlvType65665

type TlvType65665 = *tlvType65665

type TlvType65666

type TlvType65666 = *tlvType65666

type TlvType65667

type TlvType65667 = *tlvType65667

type TlvType65668

type TlvType65668 = *tlvType65668

type TlvType65669

type TlvType65669 = *tlvType65669

type TlvType65670

type TlvType65670 = *tlvType65670

type TlvType65671

type TlvType65671 = *tlvType65671

type TlvType65672

type TlvType65672 = *tlvType65672

type TlvType65673

type TlvType65673 = *tlvType65673

type TlvType65674

type TlvType65674 = *tlvType65674

type TlvType65675

type TlvType65675 = *tlvType65675

type TlvType65676

type TlvType65676 = *tlvType65676

type TlvType65677

type TlvType65677 = *tlvType65677

type TlvType65678

type TlvType65678 = *tlvType65678

type TlvType65679

type TlvType65679 = *tlvType65679

type TlvType65680

type TlvType65680 = *tlvType65680

type TlvType65681

type TlvType65681 = *tlvType65681

type TlvType65682

type TlvType65682 = *tlvType65682

type TlvType65683

type TlvType65683 = *tlvType65683

type TlvType65684

type TlvType65684 = *tlvType65684

type TlvType65685

type TlvType65685 = *tlvType65685

type TlvType65686

type TlvType65686 = *tlvType65686

type TlvType65687

type TlvType65687 = *tlvType65687

type TlvType65688

type TlvType65688 = *tlvType65688

type TlvType65689

type TlvType65689 = *tlvType65689

type TlvType65690

type TlvType65690 = *tlvType65690

type TlvType65691

type TlvType65691 = *tlvType65691

type TlvType65692

type TlvType65692 = *tlvType65692

type TlvType65693

type TlvType65693 = *tlvType65693

type TlvType65694

type TlvType65694 = *tlvType65694

type TlvType65695

type TlvType65695 = *tlvType65695

type TlvType65696

type TlvType65696 = *tlvType65696

type TlvType65697

type TlvType65697 = *tlvType65697

type TlvType65698

type TlvType65698 = *tlvType65698

type TlvType65699

type TlvType65699 = *tlvType65699

type TlvType65700

type TlvType65700 = *tlvType65700

type TlvType65701

type TlvType65701 = *tlvType65701

type TlvType65702

type TlvType65702 = *tlvType65702

type TlvType65703

type TlvType65703 = *tlvType65703

type TlvType65704

type TlvType65704 = *tlvType65704

type TlvType65705

type TlvType65705 = *tlvType65705

type TlvType65706

type TlvType65706 = *tlvType65706

type TlvType65707

type TlvType65707 = *tlvType65707

type TlvType65708

type TlvType65708 = *tlvType65708

type TlvType65709

type TlvType65709 = *tlvType65709

type TlvType65710

type TlvType65710 = *tlvType65710

type TlvType65711

type TlvType65711 = *tlvType65711

type TlvType65712

type TlvType65712 = *tlvType65712

type TlvType65713

type TlvType65713 = *tlvType65713

type TlvType65714

type TlvType65714 = *tlvType65714

type TlvType65715

type TlvType65715 = *tlvType65715

type TlvType65716

type TlvType65716 = *tlvType65716

type TlvType65717

type TlvType65717 = *tlvType65717

type TlvType65718

type TlvType65718 = *tlvType65718

type TlvType65719

type TlvType65719 = *tlvType65719

type TlvType65720

type TlvType65720 = *tlvType65720

type TlvType65721

type TlvType65721 = *tlvType65721

type TlvType65722

type TlvType65722 = *tlvType65722

type TlvType65723

type TlvType65723 = *tlvType65723

type TlvType65724

type TlvType65724 = *tlvType65724

type TlvType65725

type TlvType65725 = *tlvType65725

type TlvType65726

type TlvType65726 = *tlvType65726

type TlvType65727

type TlvType65727 = *tlvType65727

type TlvType65728

type TlvType65728 = *tlvType65728

type TlvType65729

type TlvType65729 = *tlvType65729

type TlvType65730

type TlvType65730 = *tlvType65730

type TlvType65731

type TlvType65731 = *tlvType65731

type TlvType65732

type TlvType65732 = *tlvType65732

type TlvType65733

type TlvType65733 = *tlvType65733

type TlvType65734

type TlvType65734 = *tlvType65734

type TlvType65735

type TlvType65735 = *tlvType65735

type TlvType65736

type TlvType65736 = *tlvType65736

type TlvType65737

type TlvType65737 = *tlvType65737

type TlvType65738

type TlvType65738 = *tlvType65738

type TlvType65739

type TlvType65739 = *tlvType65739

type TlvType65740

type TlvType65740 = *tlvType65740

type TlvType65741

type TlvType65741 = *tlvType65741

type TlvType65742

type TlvType65742 = *tlvType65742

type TlvType65743

type TlvType65743 = *tlvType65743

type TlvType65744

type TlvType65744 = *tlvType65744

type TlvType65745

type TlvType65745 = *tlvType65745

type TlvType65746

type TlvType65746 = *tlvType65746

type TlvType65747

type TlvType65747 = *tlvType65747

type TlvType65748

type TlvType65748 = *tlvType65748

type TlvType65749

type TlvType65749 = *tlvType65749

type TlvType65750

type TlvType65750 = *tlvType65750

type TlvType65751

type TlvType65751 = *tlvType65751

type TlvType65752

type TlvType65752 = *tlvType65752

type TlvType65753

type TlvType65753 = *tlvType65753

type TlvType65754

type TlvType65754 = *tlvType65754

type TlvType65755

type TlvType65755 = *tlvType65755

type TlvType65756

type TlvType65756 = *tlvType65756

type TlvType65757

type TlvType65757 = *tlvType65757

type TlvType65758

type TlvType65758 = *tlvType65758

type TlvType65759

type TlvType65759 = *tlvType65759

type TlvType65760

type TlvType65760 = *tlvType65760

type TlvType65761

type TlvType65761 = *tlvType65761

type TlvType65762

type TlvType65762 = *tlvType65762

type TlvType65763

type TlvType65763 = *tlvType65763

type TlvType65764

type TlvType65764 = *tlvType65764

type TlvType65765

type TlvType65765 = *tlvType65765

type TlvType65766

type TlvType65766 = *tlvType65766

type TlvType65767

type TlvType65767 = *tlvType65767

type TlvType65768

type TlvType65768 = *tlvType65768

type TlvType65769

type TlvType65769 = *tlvType65769

type TlvType65770

type TlvType65770 = *tlvType65770

type TlvType65771

type TlvType65771 = *tlvType65771

type TlvType65772

type TlvType65772 = *tlvType65772

type TlvType65773

type TlvType65773 = *tlvType65773

type TlvType65774

type TlvType65774 = *tlvType65774

type TlvType65775

type TlvType65775 = *tlvType65775

type TlvType65776

type TlvType65776 = *tlvType65776

type TlvType65777

type TlvType65777 = *tlvType65777

type TlvType65778

type TlvType65778 = *tlvType65778

type TlvType65779

type TlvType65779 = *tlvType65779

type TlvType65780

type TlvType65780 = *tlvType65780

type TlvType65781

type TlvType65781 = *tlvType65781

type TlvType65782

type TlvType65782 = *tlvType65782

type TlvType65783

type TlvType65783 = *tlvType65783

type TlvType65784

type TlvType65784 = *tlvType65784

type TlvType65785

type TlvType65785 = *tlvType65785

type TlvType65786

type TlvType65786 = *tlvType65786

type TlvType65787

type TlvType65787 = *tlvType65787

type TlvType65788

type TlvType65788 = *tlvType65788

type TlvType65789

type TlvType65789 = *tlvType65789

type TlvType65790

type TlvType65790 = *tlvType65790

type TlvType65791

type TlvType65791 = *tlvType65791

type TlvType65792

type TlvType65792 = *tlvType65792

type TlvType65793

type TlvType65793 = *tlvType65793

type TlvType65794

type TlvType65794 = *tlvType65794

type TlvType65795

type TlvType65795 = *tlvType65795

type TlvType65796

type TlvType65796 = *tlvType65796

type TlvType65797

type TlvType65797 = *tlvType65797

type TlvType65798

type TlvType65798 = *tlvType65798

type TlvType65799

type TlvType65799 = *tlvType65799

type TlvType65800

type TlvType65800 = *tlvType65800

type TlvType65801

type TlvType65801 = *tlvType65801

type TlvType65802

type TlvType65802 = *tlvType65802

type TlvType65803

type TlvType65803 = *tlvType65803

type TlvType65804

type TlvType65804 = *tlvType65804

type TlvType65805

type TlvType65805 = *tlvType65805

type TlvType65806

type TlvType65806 = *tlvType65806

type TlvType65807

type TlvType65807 = *tlvType65807

type TlvType65808

type TlvType65808 = *tlvType65808

type TlvType65809

type TlvType65809 = *tlvType65809

type TlvType65810

type TlvType65810 = *tlvType65810

type TlvType65811

type TlvType65811 = *tlvType65811

type TlvType65812

type TlvType65812 = *tlvType65812

type TlvType65813

type TlvType65813 = *tlvType65813

type TlvType65814

type TlvType65814 = *tlvType65814

type TlvType65815

type TlvType65815 = *tlvType65815

type TlvType65816

type TlvType65816 = *tlvType65816

type TlvType65817

type TlvType65817 = *tlvType65817

type TlvType65818

type TlvType65818 = *tlvType65818

type TlvType65819

type TlvType65819 = *tlvType65819

type TlvType65820

type TlvType65820 = *tlvType65820

type TlvType65821

type TlvType65821 = *tlvType65821

type TlvType65822

type TlvType65822 = *tlvType65822

type TlvType65823

type TlvType65823 = *tlvType65823

type TlvType65824

type TlvType65824 = *tlvType65824

type TlvType65825

type TlvType65825 = *tlvType65825

type TlvType65826

type TlvType65826 = *tlvType65826

type TlvType65827

type TlvType65827 = *tlvType65827

type TlvType65828

type TlvType65828 = *tlvType65828

type TlvType65829

type TlvType65829 = *tlvType65829

type TlvType65830

type TlvType65830 = *tlvType65830

type TlvType65831

type TlvType65831 = *tlvType65831

type TlvType65832

type TlvType65832 = *tlvType65832

type TlvType65833

type TlvType65833 = *tlvType65833

type TlvType65834

type TlvType65834 = *tlvType65834

type TlvType65835

type TlvType65835 = *tlvType65835

type TlvType65836

type TlvType65836 = *tlvType65836

type TlvType1000000000

type TlvType1000000000 = *tlvType1000000000

type TlvType3000000000

type TlvType3000000000 = *tlvType3000000000

type Type

type Type uint64

Type is an 64-bit identifier for a TLV Record.

type TypeMap

type TypeMap map[Type][]byte

TypeMap is a map of parsed Types. The map values are byte slices. If the byte slice is nil, the type was successfully parsed. Otherwise the value is byte slice containing the encoded data.

Directories

Path Synopsis
internal
gen command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL