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

func init() {
	testCases = append(testCases,
		(*EmbeddedFieldName)(nil),
		(*StringFieldName)(nil),
		(*StructFieldName)(nil),
		(*struct {
			F1 bool `json:"F1"`
			F2 bool `json:"F2,omitempty"`
		})(nil),
		(*EmbeddedOmitEmpty)(nil),
		(*struct {
			F1 float32 `json:"F1"`
			F2 float32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 int32 `json:"F1"`
			F2 int32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 map[string]string `json:"F1"`
			F2 map[string]string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *bool `json:"F1"`
			F2 *bool `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *float32 `json:"F1"`
			F2 *float32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *int32 `json:"F1"`
			F2 *int32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *map[string]string `json:"F1"`
			F2 *map[string]string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *[]string `json:"F1"`
			F2 *[]string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 string `json:"F1"`
			F2 string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *string `json:"F1"`
			F2 *string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F *jm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F *tm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F *sjm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F *tm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F1 *uint32 `json:"F1"`
			F2 *uint32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 []string `json:"F1"`
			F2 []string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 string `json:"F1"`
			F2 string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F jm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F tm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F struct{} `json:"f,omitempty"` // omitempty is meaningless here
		})(nil),
		(*struct {
			F sjm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F stm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F1 uint32 `json:"F1"`
			F2 uint32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 bool `json:"F1"`
			F2 bool `json:"F2,string"`
		})(nil),
		(*struct {
			F1 byte `json:"F1"`
			F2 byte `json:"F2,string"`
		})(nil),
		(*struct {
			F1 float32 `json:"F1"`
			F2 float32 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 float64 `json:"F1"`
			F2 float64 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 int8 `json:"F1"`
			F2 int8 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 int16 `json:"F1"`
			F2 int16 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 int32 `json:"F1"`
			F2 int32 `json:"F2,string"`
		})(nil),
		// remove temporarily until https://github.com/golang/go/issues/38126 is fixed
		// (*struct {
		// 	F1 string `json:"F1"`
		// 	F2 string `json:"F2,string"`
		// })(nil),
		(*struct {
			F1 uint8 `json:"F1"`
			F2 uint8 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 uint16 `json:"F1"`
			F2 uint16 `json
    
func init() {
	testCases = append(testCases,
		(*EmbeddedFieldName)(nil),
		(*StringFieldName)(nil),
		(*StructFieldName)(nil),
		(*struct {
			F1 bool `json:"F1"`
			F2 bool `json:"F2,omitempty"`
		})(nil),
		(*EmbeddedOmitEmpty)(nil),
		(*struct {
			F1 float32 `json:"F1"`
			F2 float32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 int32 `json:"F1"`
			F2 int32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 map[string]string `json:"F1"`
			F2 map[string]string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *bool `json:"F1"`
			F2 *bool `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *float32 `json:"F1"`
			F2 *float32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *int32 `json:"F1"`
			F2 *int32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *map[string]string `json:"F1"`
			F2 *map[string]string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *[]string `json:"F1"`
			F2 *[]string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 string `json:"F1"`
			F2 string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 *string `json:"F1"`
			F2 *string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F *jm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F *tm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F *sjm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F *tm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F1 *uint32 `json:"F1"`
			F2 *uint32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 []string `json:"F1"`
			F2 []string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 string `json:"F1"`
			F2 string `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F jm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F tm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F struct{} `json:"f,omitempty"` // omitempty is meaningless here
		})(nil),
		(*struct {
			F sjm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F stm `json:"f,omitempty"`
		})(nil),
		(*struct {
			F1 uint32 `json:"F1"`
			F2 uint32 `json:"F2,omitempty"`
		})(nil),
		(*struct {
			F1 bool `json:"F1"`
			F2 bool `json:"F2,string"`
		})(nil),
		(*struct {
			F1 byte `json:"F1"`
			F2 byte `json:"F2,string"`
		})(nil),
		(*struct {
			F1 float32 `json:"F1"`
			F2 float32 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 float64 `json:"F1"`
			F2 float64 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 int8 `json:"F1"`
			F2 int8 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 int16 `json:"F1"`
			F2 int16 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 int32 `json:"F1"`
			F2 int32 `json:"F2,string"`
		})(nil),
		// remove temporarily until https://github.com/golang/go/issues/38126 is fixed
		// (*struct {
		// 	F1 string `json:"F1"`
		// 	F2 string `json:"F2,string"`
		// })(nil),
		(*struct {
			F1 uint8 `json:"F1"`
			F2 uint8 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 uint16 `json:"F1"`
			F2 uint16 `json:"F2,string"`
		})(nil),
		(*struct {
			F1 uint32 `json:"F1"`
			F2 uint32 `json:"F2,string"`
		})(nil),
		(*struct {
			A           string            `json:"a,omitempty"`
			B           string            `json:"b,omitempty"`
			Annotations map[string]string `json:"annotations,omitempty"`
		})(nil),
		(*struct {
			Field bool `json:",omitempty,string"`
		})(nil),
		(*struct {
			Field bool `json:"中文"`
		})(nil),
	)
}