git.sr.ht/~sircmpwn/gqlgen@v0.0.0-20200522192042-c84d29a1c940/codegen/testserver/generated.go (about)

     1  // Code generated by git.sr.ht/~sircmpwn/gqlgen, DO NOT EDIT.
     2  
     3  package testserver
     4  
     5  import (
     6  	"bytes"
     7  	"context"
     8  	"errors"
     9  	"fmt"
    10  	"io"
    11  	"strconv"
    12  	"sync"
    13  	"sync/atomic"
    14  	"time"
    15  
    16  	introspection1 "git.sr.ht/~sircmpwn/gqlgen/codegen/testserver/introspection"
    17  	invalid_packagename "git.sr.ht/~sircmpwn/gqlgen/codegen/testserver/invalid-packagename"
    18  	"git.sr.ht/~sircmpwn/gqlgen/graphql"
    19  	"git.sr.ht/~sircmpwn/gqlgen/graphql/introspection"
    20  	gqlparser "github.com/vektah/gqlparser/v2"
    21  	"github.com/vektah/gqlparser/v2/ast"
    22  )
    23  
    24  // region    ************************** generated!.gotpl **************************
    25  
    26  // NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.
    27  func NewExecutableSchema(cfg Config) graphql.ExecutableSchema {
    28  	return &executableSchema{
    29  		resolvers:  cfg.Resolvers,
    30  		directives: cfg.Directives,
    31  		complexity: cfg.Complexity,
    32  	}
    33  }
    34  
    35  type Config struct {
    36  	Resolvers  ResolverRoot
    37  	Directives DirectiveRoot
    38  	Complexity ComplexityRoot
    39  }
    40  
    41  type ResolverRoot interface {
    42  	BackedByInterface() BackedByInterfaceResolver
    43  	Errors() ErrorsResolver
    44  	ForcedResolver() ForcedResolverResolver
    45  	ModelMethods() ModelMethodsResolver
    46  	OverlappingFields() OverlappingFieldsResolver
    47  	Panics() PanicsResolver
    48  	Primitive() PrimitiveResolver
    49  	PrimitiveString() PrimitiveStringResolver
    50  	Query() QueryResolver
    51  	Subscription() SubscriptionResolver
    52  	User() UserResolver
    53  }
    54  
    55  type DirectiveRoot struct {
    56  	Custom        func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    57  	Directive1    func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    58  	Directive2    func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    59  	Length        func(ctx context.Context, obj interface{}, next graphql.Resolver, min int, max *int, message *string) (res interface{}, err error)
    60  	Logged        func(ctx context.Context, obj interface{}, next graphql.Resolver, id string) (res interface{}, err error)
    61  	MakeNil       func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    62  	MakeTypedNil  func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    63  	Range         func(ctx context.Context, obj interface{}, next graphql.Resolver, min *int, max *int) (res interface{}, err error)
    64  	ToNull        func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    65  	Unimplemented func(ctx context.Context, obj interface{}, next graphql.Resolver) (res interface{}, err error)
    66  }
    67  
    68  type ComplexityRoot struct {
    69  	A struct {
    70  		ID func(childComplexity int) int
    71  	}
    72  
    73  	AIt struct {
    74  		ID func(childComplexity int) int
    75  	}
    76  
    77  	AbIt struct {
    78  		ID func(childComplexity int) int
    79  	}
    80  
    81  	Autobind struct {
    82  		IdInt func(childComplexity int) int
    83  		IdStr func(childComplexity int) int
    84  		Int   func(childComplexity int) int
    85  		Int32 func(childComplexity int) int
    86  		Int64 func(childComplexity int) int
    87  	}
    88  
    89  	B struct {
    90  		ID func(childComplexity int) int
    91  	}
    92  
    93  	BackedByInterface struct {
    94  		ID                      func(childComplexity int) int
    95  		ThisShouldBind          func(childComplexity int) int
    96  		ThisShouldBindWithError func(childComplexity int) int
    97  	}
    98  
    99  	Cat struct {
   100  		CatBreed func(childComplexity int) int
   101  		Species  func(childComplexity int) int
   102  	}
   103  
   104  	CheckIssue896 struct {
   105  		ID func(childComplexity int) int
   106  	}
   107  
   108  	Circle struct {
   109  		Area   func(childComplexity int) int
   110  		Radius func(childComplexity int) int
   111  	}
   112  
   113  	ConcreteNodeA struct {
   114  		Child func(childComplexity int) int
   115  		ID    func(childComplexity int) int
   116  		Name  func(childComplexity int) int
   117  	}
   118  
   119  	ConcreteNodeInterface struct {
   120  		Child func(childComplexity int) int
   121  		ID    func(childComplexity int) int
   122  	}
   123  
   124  	ContentPost struct {
   125  		Foo func(childComplexity int) int
   126  	}
   127  
   128  	ContentUser struct {
   129  		Foo func(childComplexity int) int
   130  	}
   131  
   132  	Dog struct {
   133  		DogBreed func(childComplexity int) int
   134  		Species  func(childComplexity int) int
   135  	}
   136  
   137  	EmbeddedCase1 struct {
   138  		ExportedEmbeddedPointerExportedMethod func(childComplexity int) int
   139  	}
   140  
   141  	EmbeddedCase2 struct {
   142  		UnexportedEmbeddedPointerExportedMethod func(childComplexity int) int
   143  	}
   144  
   145  	EmbeddedCase3 struct {
   146  		UnexportedEmbeddedInterfaceExportedMethod func(childComplexity int) int
   147  	}
   148  
   149  	EmbeddedDefaultScalar struct {
   150  		Value func(childComplexity int) int
   151  	}
   152  
   153  	EmbeddedPointer struct {
   154  		ID    func(childComplexity int) int
   155  		Title func(childComplexity int) int
   156  	}
   157  
   158  	Error struct {
   159  		ErrorOnNonRequiredField func(childComplexity int) int
   160  		ErrorOnRequiredField    func(childComplexity int) int
   161  		ID                      func(childComplexity int) int
   162  		NilOnRequiredField      func(childComplexity int) int
   163  	}
   164  
   165  	Errors struct {
   166  		A func(childComplexity int) int
   167  		B func(childComplexity int) int
   168  		C func(childComplexity int) int
   169  		D func(childComplexity int) int
   170  		E func(childComplexity int) int
   171  	}
   172  
   173  	ForcedResolver struct {
   174  		Field func(childComplexity int) int
   175  	}
   176  
   177  	InnerObject struct {
   178  		ID func(childComplexity int) int
   179  	}
   180  
   181  	InvalidIdentifier struct {
   182  		ID func(childComplexity int) int
   183  	}
   184  
   185  	It struct {
   186  		ID func(childComplexity int) int
   187  	}
   188  
   189  	LoopA struct {
   190  		B func(childComplexity int) int
   191  	}
   192  
   193  	LoopB struct {
   194  		A func(childComplexity int) int
   195  	}
   196  
   197  	Map struct {
   198  		ID func(childComplexity int) int
   199  	}
   200  
   201  	MapStringInterfaceType struct {
   202  		A func(childComplexity int) int
   203  		B func(childComplexity int) int
   204  	}
   205  
   206  	ModelMethods struct {
   207  		NoContext     func(childComplexity int) int
   208  		ResolverField func(childComplexity int) int
   209  		WithContext   func(childComplexity int) int
   210  	}
   211  
   212  	ObjectDirectives struct {
   213  		NullableText func(childComplexity int) int
   214  		Text         func(childComplexity int) int
   215  	}
   216  
   217  	ObjectDirectivesWithCustomGoModel struct {
   218  		NullableText func(childComplexity int) int
   219  	}
   220  
   221  	OuterObject struct {
   222  		Inner func(childComplexity int) int
   223  	}
   224  
   225  	OverlappingFields struct {
   226  		Foo    func(childComplexity int) int
   227  		NewFoo func(childComplexity int) int
   228  		OldFoo func(childComplexity int) int
   229  	}
   230  
   231  	Panics struct {
   232  		ArgUnmarshal       func(childComplexity int, u []MarshalPanic) int
   233  		FieldFuncMarshal   func(childComplexity int, u []MarshalPanic) int
   234  		FieldScalarMarshal func(childComplexity int) int
   235  	}
   236  
   237  	Primitive struct {
   238  		Squared func(childComplexity int) int
   239  		Value   func(childComplexity int) int
   240  	}
   241  
   242  	PrimitiveString struct {
   243  		Doubled func(childComplexity int) int
   244  		Len     func(childComplexity int) int
   245  		Value   func(childComplexity int) int
   246  	}
   247  
   248  	Query struct {
   249  		Animal                           func(childComplexity int) int
   250  		Autobind                         func(childComplexity int) int
   251  		Collision                        func(childComplexity int) int
   252  		DefaultScalar                    func(childComplexity int, arg string) int
   253  		DeprecatedField                  func(childComplexity int) int
   254  		DirectiveArg                     func(childComplexity int, arg string) int
   255  		DirectiveDouble                  func(childComplexity int) int
   256  		DirectiveField                   func(childComplexity int) int
   257  		DirectiveFieldDef                func(childComplexity int, ret string) int
   258  		DirectiveInput                   func(childComplexity int, arg InputDirectives) int
   259  		DirectiveInputNullable           func(childComplexity int, arg *InputDirectives) int
   260  		DirectiveInputType               func(childComplexity int, arg InnerInput) int
   261  		DirectiveNullableArg             func(childComplexity int, arg *int, arg2 *int, arg3 *string) int
   262  		DirectiveObject                  func(childComplexity int) int
   263  		DirectiveObjectWithCustomGoModel func(childComplexity int) int
   264  		DirectiveUnimplemented           func(childComplexity int) int
   265  		EmbeddedCase1                    func(childComplexity int) int
   266  		EmbeddedCase2                    func(childComplexity int) int
   267  		EmbeddedCase3                    func(childComplexity int) int
   268  		EnumInInput                      func(childComplexity int, input *InputWithEnumValue) int
   269  		ErrorBubble                      func(childComplexity int) int
   270  		Errors                           func(childComplexity int) int
   271  		Fallback                         func(childComplexity int, arg FallbackToStringEncoding) int
   272  		InputSlice                       func(childComplexity int, arg []string) int
   273  		InvalidIdentifier                func(childComplexity int) int
   274  		Issue896a                        func(childComplexity int) int
   275  		MapInput                         func(childComplexity int, input map[string]interface{}) int
   276  		MapNestedStringInterface         func(childComplexity int, in *NestedMapInput) int
   277  		MapStringInterface               func(childComplexity int, in map[string]interface{}) int
   278  		ModelMethods                     func(childComplexity int) int
   279  		NestedInputs                     func(childComplexity int, input [][]*OuterInput) int
   280  		NestedOutputs                    func(childComplexity int) int
   281  		NoShape                          func(childComplexity int) int
   282  		NoShapeTypedNil                  func(childComplexity int) int
   283  		Node                             func(childComplexity int) int
   284  		NotAnInterface                   func(childComplexity int) int
   285  		NullableArg                      func(childComplexity int, arg *int) int
   286  		OptionalUnion                    func(childComplexity int) int
   287  		Overlapping                      func(childComplexity int) int
   288  		Panics                           func(childComplexity int) int
   289  		PrimitiveObject                  func(childComplexity int) int
   290  		PrimitiveStringObject            func(childComplexity int) int
   291  		Recursive                        func(childComplexity int, input *RecursiveInputSlice) int
   292  		ScalarSlice                      func(childComplexity int) int
   293  		ShapeUnion                       func(childComplexity int) int
   294  		Shapes                           func(childComplexity int) int
   295  		Slices                           func(childComplexity int) int
   296  		User                             func(childComplexity int, id int) int
   297  		Valid                            func(childComplexity int) int
   298  		ValidType                        func(childComplexity int) int
   299  		WrappedScalar                    func(childComplexity int) int
   300  		WrappedStruct                    func(childComplexity int) int
   301  	}
   302  
   303  	Rectangle struct {
   304  		Area   func(childComplexity int) int
   305  		Length func(childComplexity int) int
   306  		Width  func(childComplexity int) int
   307  	}
   308  
   309  	Slices struct {
   310  		Test1 func(childComplexity int) int
   311  		Test2 func(childComplexity int) int
   312  		Test3 func(childComplexity int) int
   313  		Test4 func(childComplexity int) int
   314  	}
   315  
   316  	Subscription struct {
   317  		DirectiveArg           func(childComplexity int, arg string) int
   318  		DirectiveDouble        func(childComplexity int) int
   319  		DirectiveNullableArg   func(childComplexity int, arg *int, arg2 *int, arg3 *string) int
   320  		DirectiveUnimplemented func(childComplexity int) int
   321  		InitPayload            func(childComplexity int) int
   322  		Issue896b              func(childComplexity int) int
   323  		Updated                func(childComplexity int) int
   324  	}
   325  
   326  	User struct {
   327  		Created func(childComplexity int) int
   328  		Friends func(childComplexity int) int
   329  		ID      func(childComplexity int) int
   330  		Updated func(childComplexity int) int
   331  	}
   332  
   333  	ValidType struct {
   334  		DifferentCase      func(childComplexity int) int
   335  		DifferentCaseOld   func(childComplexity int) int
   336  		ValidArgs          func(childComplexity int, breakArg string, defaultArg string, funcArg string, interfaceArg string, selectArg string, caseArg string, deferArg string, goArg string, mapArg string, structArg string, chanArg string, elseArg string, gotoArg string, packageArg string, switchArg string, constArg string, fallthroughArg string, ifArg string, rangeArg string, typeArg string, continueArg string, forArg string, importArg string, returnArg string, varArg string, _ string) int
   337  		ValidInputKeywords func(childComplexity int, input *ValidInput) int
   338  	}
   339  
   340  	WrappedStruct struct {
   341  		Name func(childComplexity int) int
   342  	}
   343  
   344  	XXIt struct {
   345  		ID func(childComplexity int) int
   346  	}
   347  
   348  	XxIt struct {
   349  		ID func(childComplexity int) int
   350  	}
   351  
   352  	AsdfIt struct {
   353  		ID func(childComplexity int) int
   354  	}
   355  
   356  	IIt struct {
   357  		ID func(childComplexity int) int
   358  	}
   359  }
   360  
   361  type BackedByInterfaceResolver interface {
   362  	ID(ctx context.Context, obj BackedByInterface) (string, error)
   363  }
   364  type ErrorsResolver interface {
   365  	A(ctx context.Context, obj *Errors) (*Error, error)
   366  	B(ctx context.Context, obj *Errors) (*Error, error)
   367  	C(ctx context.Context, obj *Errors) (*Error, error)
   368  	D(ctx context.Context, obj *Errors) (*Error, error)
   369  	E(ctx context.Context, obj *Errors) (*Error, error)
   370  }
   371  type ForcedResolverResolver interface {
   372  	Field(ctx context.Context, obj *ForcedResolver) (*Circle, error)
   373  }
   374  type ModelMethodsResolver interface {
   375  	ResolverField(ctx context.Context, obj *ModelMethods) (bool, error)
   376  }
   377  type OverlappingFieldsResolver interface {
   378  	OldFoo(ctx context.Context, obj *OverlappingFields) (int, error)
   379  }
   380  type PanicsResolver interface {
   381  	FieldScalarMarshal(ctx context.Context, obj *Panics) ([]MarshalPanic, error)
   382  
   383  	ArgUnmarshal(ctx context.Context, obj *Panics, u []MarshalPanic) (bool, error)
   384  }
   385  type PrimitiveResolver interface {
   386  	Value(ctx context.Context, obj *Primitive) (int, error)
   387  }
   388  type PrimitiveStringResolver interface {
   389  	Value(ctx context.Context, obj *PrimitiveString) (string, error)
   390  
   391  	Len(ctx context.Context, obj *PrimitiveString) (int, error)
   392  }
   393  type QueryResolver interface {
   394  	InvalidIdentifier(ctx context.Context) (*invalid_packagename.InvalidIdentifier, error)
   395  	Collision(ctx context.Context) (*introspection1.It, error)
   396  	MapInput(ctx context.Context, input map[string]interface{}) (*bool, error)
   397  	Recursive(ctx context.Context, input *RecursiveInputSlice) (*bool, error)
   398  	NestedInputs(ctx context.Context, input [][]*OuterInput) (*bool, error)
   399  	NestedOutputs(ctx context.Context) ([][]*OuterObject, error)
   400  	ModelMethods(ctx context.Context) (*ModelMethods, error)
   401  	User(ctx context.Context, id int) (*User, error)
   402  	NullableArg(ctx context.Context, arg *int) (*string, error)
   403  	InputSlice(ctx context.Context, arg []string) (bool, error)
   404  	ShapeUnion(ctx context.Context) (ShapeUnion, error)
   405  	Autobind(ctx context.Context) (*Autobind, error)
   406  	DeprecatedField(ctx context.Context) (string, error)
   407  	Overlapping(ctx context.Context) (*OverlappingFields, error)
   408  	DirectiveArg(ctx context.Context, arg string) (*string, error)
   409  	DirectiveNullableArg(ctx context.Context, arg *int, arg2 *int, arg3 *string) (*string, error)
   410  	DirectiveInputNullable(ctx context.Context, arg *InputDirectives) (*string, error)
   411  	DirectiveInput(ctx context.Context, arg InputDirectives) (*string, error)
   412  	DirectiveInputType(ctx context.Context, arg InnerInput) (*string, error)
   413  	DirectiveObject(ctx context.Context) (*ObjectDirectives, error)
   414  	DirectiveObjectWithCustomGoModel(ctx context.Context) (*ObjectDirectivesWithCustomGoModel, error)
   415  	DirectiveFieldDef(ctx context.Context, ret string) (string, error)
   416  	DirectiveField(ctx context.Context) (*string, error)
   417  	DirectiveDouble(ctx context.Context) (*string, error)
   418  	DirectiveUnimplemented(ctx context.Context) (*string, error)
   419  	EmbeddedCase1(ctx context.Context) (*EmbeddedCase1, error)
   420  	EmbeddedCase2(ctx context.Context) (*EmbeddedCase2, error)
   421  	EmbeddedCase3(ctx context.Context) (*EmbeddedCase3, error)
   422  	EnumInInput(ctx context.Context, input *InputWithEnumValue) (EnumTest, error)
   423  	Shapes(ctx context.Context) ([]Shape, error)
   424  	NoShape(ctx context.Context) (Shape, error)
   425  	Node(ctx context.Context) (Node, error)
   426  	NoShapeTypedNil(ctx context.Context) (Shape, error)
   427  	Animal(ctx context.Context) (Animal, error)
   428  	NotAnInterface(ctx context.Context) (BackedByInterface, error)
   429  	Issue896a(ctx context.Context) ([]*CheckIssue896, error)
   430  	MapStringInterface(ctx context.Context, in map[string]interface{}) (map[string]interface{}, error)
   431  	MapNestedStringInterface(ctx context.Context, in *NestedMapInput) (map[string]interface{}, error)
   432  	ErrorBubble(ctx context.Context) (*Error, error)
   433  	Errors(ctx context.Context) (*Errors, error)
   434  	Valid(ctx context.Context) (string, error)
   435  	Panics(ctx context.Context) (*Panics, error)
   436  	PrimitiveObject(ctx context.Context) ([]Primitive, error)
   437  	PrimitiveStringObject(ctx context.Context) ([]PrimitiveString, error)
   438  	DefaultScalar(ctx context.Context, arg string) (string, error)
   439  	Slices(ctx context.Context) (*Slices, error)
   440  	ScalarSlice(ctx context.Context) ([]byte, error)
   441  	Fallback(ctx context.Context, arg FallbackToStringEncoding) (FallbackToStringEncoding, error)
   442  	OptionalUnion(ctx context.Context) (TestUnion, error)
   443  	ValidType(ctx context.Context) (*ValidType, error)
   444  	WrappedStruct(ctx context.Context) (*WrappedStruct, error)
   445  	WrappedScalar(ctx context.Context) (WrappedScalar, error)
   446  }
   447  type SubscriptionResolver interface {
   448  	Updated(ctx context.Context) (<-chan string, error)
   449  	InitPayload(ctx context.Context) (<-chan string, error)
   450  	DirectiveArg(ctx context.Context, arg string) (<-chan *string, error)
   451  	DirectiveNullableArg(ctx context.Context, arg *int, arg2 *int, arg3 *string) (<-chan *string, error)
   452  	DirectiveDouble(ctx context.Context) (<-chan *string, error)
   453  	DirectiveUnimplemented(ctx context.Context) (<-chan *string, error)
   454  	Issue896b(ctx context.Context) (<-chan []*CheckIssue896, error)
   455  }
   456  type UserResolver interface {
   457  	Friends(ctx context.Context, obj *User) ([]*User, error)
   458  }
   459  
   460  type executableSchema struct {
   461  	resolvers  ResolverRoot
   462  	directives DirectiveRoot
   463  	complexity ComplexityRoot
   464  }
   465  
   466  func (e *executableSchema) Schema() *ast.Schema {
   467  	return parsedSchema
   468  }
   469  
   470  func (e *executableSchema) Complexity(typeName, field string, childComplexity int, rawArgs map[string]interface{}) (int, bool) {
   471  	ec := executionContext{nil, e}
   472  	_ = ec
   473  	switch typeName + "." + field {
   474  
   475  	case "A.id":
   476  		if e.complexity.A.ID == nil {
   477  			break
   478  		}
   479  
   480  		return e.complexity.A.ID(childComplexity), true
   481  
   482  	case "AIt.id":
   483  		if e.complexity.AIt.ID == nil {
   484  			break
   485  		}
   486  
   487  		return e.complexity.AIt.ID(childComplexity), true
   488  
   489  	case "AbIt.id":
   490  		if e.complexity.AbIt.ID == nil {
   491  			break
   492  		}
   493  
   494  		return e.complexity.AbIt.ID(childComplexity), true
   495  
   496  	case "Autobind.idInt":
   497  		if e.complexity.Autobind.IdInt == nil {
   498  			break
   499  		}
   500  
   501  		return e.complexity.Autobind.IdInt(childComplexity), true
   502  
   503  	case "Autobind.idStr":
   504  		if e.complexity.Autobind.IdStr == nil {
   505  			break
   506  		}
   507  
   508  		return e.complexity.Autobind.IdStr(childComplexity), true
   509  
   510  	case "Autobind.int":
   511  		if e.complexity.Autobind.Int == nil {
   512  			break
   513  		}
   514  
   515  		return e.complexity.Autobind.Int(childComplexity), true
   516  
   517  	case "Autobind.int32":
   518  		if e.complexity.Autobind.Int32 == nil {
   519  			break
   520  		}
   521  
   522  		return e.complexity.Autobind.Int32(childComplexity), true
   523  
   524  	case "Autobind.int64":
   525  		if e.complexity.Autobind.Int64 == nil {
   526  			break
   527  		}
   528  
   529  		return e.complexity.Autobind.Int64(childComplexity), true
   530  
   531  	case "B.id":
   532  		if e.complexity.B.ID == nil {
   533  			break
   534  		}
   535  
   536  		return e.complexity.B.ID(childComplexity), true
   537  
   538  	case "BackedByInterface.id":
   539  		if e.complexity.BackedByInterface.ID == nil {
   540  			break
   541  		}
   542  
   543  		return e.complexity.BackedByInterface.ID(childComplexity), true
   544  
   545  	case "BackedByInterface.thisShouldBind":
   546  		if e.complexity.BackedByInterface.ThisShouldBind == nil {
   547  			break
   548  		}
   549  
   550  		return e.complexity.BackedByInterface.ThisShouldBind(childComplexity), true
   551  
   552  	case "BackedByInterface.thisShouldBindWithError":
   553  		if e.complexity.BackedByInterface.ThisShouldBindWithError == nil {
   554  			break
   555  		}
   556  
   557  		return e.complexity.BackedByInterface.ThisShouldBindWithError(childComplexity), true
   558  
   559  	case "Cat.catBreed":
   560  		if e.complexity.Cat.CatBreed == nil {
   561  			break
   562  		}
   563  
   564  		return e.complexity.Cat.CatBreed(childComplexity), true
   565  
   566  	case "Cat.species":
   567  		if e.complexity.Cat.Species == nil {
   568  			break
   569  		}
   570  
   571  		return e.complexity.Cat.Species(childComplexity), true
   572  
   573  	case "CheckIssue896.id":
   574  		if e.complexity.CheckIssue896.ID == nil {
   575  			break
   576  		}
   577  
   578  		return e.complexity.CheckIssue896.ID(childComplexity), true
   579  
   580  	case "Circle.area":
   581  		if e.complexity.Circle.Area == nil {
   582  			break
   583  		}
   584  
   585  		return e.complexity.Circle.Area(childComplexity), true
   586  
   587  	case "Circle.radius":
   588  		if e.complexity.Circle.Radius == nil {
   589  			break
   590  		}
   591  
   592  		return e.complexity.Circle.Radius(childComplexity), true
   593  
   594  	case "ConcreteNodeA.child":
   595  		if e.complexity.ConcreteNodeA.Child == nil {
   596  			break
   597  		}
   598  
   599  		return e.complexity.ConcreteNodeA.Child(childComplexity), true
   600  
   601  	case "ConcreteNodeA.id":
   602  		if e.complexity.ConcreteNodeA.ID == nil {
   603  			break
   604  		}
   605  
   606  		return e.complexity.ConcreteNodeA.ID(childComplexity), true
   607  
   608  	case "ConcreteNodeA.name":
   609  		if e.complexity.ConcreteNodeA.Name == nil {
   610  			break
   611  		}
   612  
   613  		return e.complexity.ConcreteNodeA.Name(childComplexity), true
   614  
   615  	case "ConcreteNodeInterface.child":
   616  		if e.complexity.ConcreteNodeInterface.Child == nil {
   617  			break
   618  		}
   619  
   620  		return e.complexity.ConcreteNodeInterface.Child(childComplexity), true
   621  
   622  	case "ConcreteNodeInterface.id":
   623  		if e.complexity.ConcreteNodeInterface.ID == nil {
   624  			break
   625  		}
   626  
   627  		return e.complexity.ConcreteNodeInterface.ID(childComplexity), true
   628  
   629  	case "Content_Post.foo":
   630  		if e.complexity.ContentPost.Foo == nil {
   631  			break
   632  		}
   633  
   634  		return e.complexity.ContentPost.Foo(childComplexity), true
   635  
   636  	case "Content_User.foo":
   637  		if e.complexity.ContentUser.Foo == nil {
   638  			break
   639  		}
   640  
   641  		return e.complexity.ContentUser.Foo(childComplexity), true
   642  
   643  	case "Dog.dogBreed":
   644  		if e.complexity.Dog.DogBreed == nil {
   645  			break
   646  		}
   647  
   648  		return e.complexity.Dog.DogBreed(childComplexity), true
   649  
   650  	case "Dog.species":
   651  		if e.complexity.Dog.Species == nil {
   652  			break
   653  		}
   654  
   655  		return e.complexity.Dog.Species(childComplexity), true
   656  
   657  	case "EmbeddedCase1.exportedEmbeddedPointerExportedMethod":
   658  		if e.complexity.EmbeddedCase1.ExportedEmbeddedPointerExportedMethod == nil {
   659  			break
   660  		}
   661  
   662  		return e.complexity.EmbeddedCase1.ExportedEmbeddedPointerExportedMethod(childComplexity), true
   663  
   664  	case "EmbeddedCase2.unexportedEmbeddedPointerExportedMethod":
   665  		if e.complexity.EmbeddedCase2.UnexportedEmbeddedPointerExportedMethod == nil {
   666  			break
   667  		}
   668  
   669  		return e.complexity.EmbeddedCase2.UnexportedEmbeddedPointerExportedMethod(childComplexity), true
   670  
   671  	case "EmbeddedCase3.unexportedEmbeddedInterfaceExportedMethod":
   672  		if e.complexity.EmbeddedCase3.UnexportedEmbeddedInterfaceExportedMethod == nil {
   673  			break
   674  		}
   675  
   676  		return e.complexity.EmbeddedCase3.UnexportedEmbeddedInterfaceExportedMethod(childComplexity), true
   677  
   678  	case "EmbeddedDefaultScalar.value":
   679  		if e.complexity.EmbeddedDefaultScalar.Value == nil {
   680  			break
   681  		}
   682  
   683  		return e.complexity.EmbeddedDefaultScalar.Value(childComplexity), true
   684  
   685  	case "EmbeddedPointer.ID":
   686  		if e.complexity.EmbeddedPointer.ID == nil {
   687  			break
   688  		}
   689  
   690  		return e.complexity.EmbeddedPointer.ID(childComplexity), true
   691  
   692  	case "EmbeddedPointer.Title":
   693  		if e.complexity.EmbeddedPointer.Title == nil {
   694  			break
   695  		}
   696  
   697  		return e.complexity.EmbeddedPointer.Title(childComplexity), true
   698  
   699  	case "Error.errorOnNonRequiredField":
   700  		if e.complexity.Error.ErrorOnNonRequiredField == nil {
   701  			break
   702  		}
   703  
   704  		return e.complexity.Error.ErrorOnNonRequiredField(childComplexity), true
   705  
   706  	case "Error.errorOnRequiredField":
   707  		if e.complexity.Error.ErrorOnRequiredField == nil {
   708  			break
   709  		}
   710  
   711  		return e.complexity.Error.ErrorOnRequiredField(childComplexity), true
   712  
   713  	case "Error.id":
   714  		if e.complexity.Error.ID == nil {
   715  			break
   716  		}
   717  
   718  		return e.complexity.Error.ID(childComplexity), true
   719  
   720  	case "Error.nilOnRequiredField":
   721  		if e.complexity.Error.NilOnRequiredField == nil {
   722  			break
   723  		}
   724  
   725  		return e.complexity.Error.NilOnRequiredField(childComplexity), true
   726  
   727  	case "Errors.a":
   728  		if e.complexity.Errors.A == nil {
   729  			break
   730  		}
   731  
   732  		return e.complexity.Errors.A(childComplexity), true
   733  
   734  	case "Errors.b":
   735  		if e.complexity.Errors.B == nil {
   736  			break
   737  		}
   738  
   739  		return e.complexity.Errors.B(childComplexity), true
   740  
   741  	case "Errors.c":
   742  		if e.complexity.Errors.C == nil {
   743  			break
   744  		}
   745  
   746  		return e.complexity.Errors.C(childComplexity), true
   747  
   748  	case "Errors.d":
   749  		if e.complexity.Errors.D == nil {
   750  			break
   751  		}
   752  
   753  		return e.complexity.Errors.D(childComplexity), true
   754  
   755  	case "Errors.e":
   756  		if e.complexity.Errors.E == nil {
   757  			break
   758  		}
   759  
   760  		return e.complexity.Errors.E(childComplexity), true
   761  
   762  	case "ForcedResolver.field":
   763  		if e.complexity.ForcedResolver.Field == nil {
   764  			break
   765  		}
   766  
   767  		return e.complexity.ForcedResolver.Field(childComplexity), true
   768  
   769  	case "InnerObject.id":
   770  		if e.complexity.InnerObject.ID == nil {
   771  			break
   772  		}
   773  
   774  		return e.complexity.InnerObject.ID(childComplexity), true
   775  
   776  	case "InvalidIdentifier.id":
   777  		if e.complexity.InvalidIdentifier.ID == nil {
   778  			break
   779  		}
   780  
   781  		return e.complexity.InvalidIdentifier.ID(childComplexity), true
   782  
   783  	case "It.id":
   784  		if e.complexity.It.ID == nil {
   785  			break
   786  		}
   787  
   788  		return e.complexity.It.ID(childComplexity), true
   789  
   790  	case "LoopA.b":
   791  		if e.complexity.LoopA.B == nil {
   792  			break
   793  		}
   794  
   795  		return e.complexity.LoopA.B(childComplexity), true
   796  
   797  	case "LoopB.a":
   798  		if e.complexity.LoopB.A == nil {
   799  			break
   800  		}
   801  
   802  		return e.complexity.LoopB.A(childComplexity), true
   803  
   804  	case "Map.id":
   805  		if e.complexity.Map.ID == nil {
   806  			break
   807  		}
   808  
   809  		return e.complexity.Map.ID(childComplexity), true
   810  
   811  	case "MapStringInterfaceType.a":
   812  		if e.complexity.MapStringInterfaceType.A == nil {
   813  			break
   814  		}
   815  
   816  		return e.complexity.MapStringInterfaceType.A(childComplexity), true
   817  
   818  	case "MapStringInterfaceType.b":
   819  		if e.complexity.MapStringInterfaceType.B == nil {
   820  			break
   821  		}
   822  
   823  		return e.complexity.MapStringInterfaceType.B(childComplexity), true
   824  
   825  	case "ModelMethods.noContext":
   826  		if e.complexity.ModelMethods.NoContext == nil {
   827  			break
   828  		}
   829  
   830  		return e.complexity.ModelMethods.NoContext(childComplexity), true
   831  
   832  	case "ModelMethods.resolverField":
   833  		if e.complexity.ModelMethods.ResolverField == nil {
   834  			break
   835  		}
   836  
   837  		return e.complexity.ModelMethods.ResolverField(childComplexity), true
   838  
   839  	case "ModelMethods.withContext":
   840  		if e.complexity.ModelMethods.WithContext == nil {
   841  			break
   842  		}
   843  
   844  		return e.complexity.ModelMethods.WithContext(childComplexity), true
   845  
   846  	case "ObjectDirectives.nullableText":
   847  		if e.complexity.ObjectDirectives.NullableText == nil {
   848  			break
   849  		}
   850  
   851  		return e.complexity.ObjectDirectives.NullableText(childComplexity), true
   852  
   853  	case "ObjectDirectives.text":
   854  		if e.complexity.ObjectDirectives.Text == nil {
   855  			break
   856  		}
   857  
   858  		return e.complexity.ObjectDirectives.Text(childComplexity), true
   859  
   860  	case "ObjectDirectivesWithCustomGoModel.nullableText":
   861  		if e.complexity.ObjectDirectivesWithCustomGoModel.NullableText == nil {
   862  			break
   863  		}
   864  
   865  		return e.complexity.ObjectDirectivesWithCustomGoModel.NullableText(childComplexity), true
   866  
   867  	case "OuterObject.inner":
   868  		if e.complexity.OuterObject.Inner == nil {
   869  			break
   870  		}
   871  
   872  		return e.complexity.OuterObject.Inner(childComplexity), true
   873  
   874  	case "OverlappingFields.oneFoo", "OverlappingFields.twoFoo":
   875  		if e.complexity.OverlappingFields.Foo == nil {
   876  			break
   877  		}
   878  
   879  		return e.complexity.OverlappingFields.Foo(childComplexity), true
   880  
   881  	case "OverlappingFields.newFoo", "OverlappingFields.new_foo":
   882  		if e.complexity.OverlappingFields.NewFoo == nil {
   883  			break
   884  		}
   885  
   886  		return e.complexity.OverlappingFields.NewFoo(childComplexity), true
   887  
   888  	case "OverlappingFields.oldFoo":
   889  		if e.complexity.OverlappingFields.OldFoo == nil {
   890  			break
   891  		}
   892  
   893  		return e.complexity.OverlappingFields.OldFoo(childComplexity), true
   894  
   895  	case "Panics.argUnmarshal":
   896  		if e.complexity.Panics.ArgUnmarshal == nil {
   897  			break
   898  		}
   899  
   900  		args, err := ec.field_Panics_argUnmarshal_args(context.TODO(), rawArgs)
   901  		if err != nil {
   902  			return 0, false
   903  		}
   904  
   905  		return e.complexity.Panics.ArgUnmarshal(childComplexity, args["u"].([]MarshalPanic)), true
   906  
   907  	case "Panics.fieldFuncMarshal":
   908  		if e.complexity.Panics.FieldFuncMarshal == nil {
   909  			break
   910  		}
   911  
   912  		args, err := ec.field_Panics_fieldFuncMarshal_args(context.TODO(), rawArgs)
   913  		if err != nil {
   914  			return 0, false
   915  		}
   916  
   917  		return e.complexity.Panics.FieldFuncMarshal(childComplexity, args["u"].([]MarshalPanic)), true
   918  
   919  	case "Panics.fieldScalarMarshal":
   920  		if e.complexity.Panics.FieldScalarMarshal == nil {
   921  			break
   922  		}
   923  
   924  		return e.complexity.Panics.FieldScalarMarshal(childComplexity), true
   925  
   926  	case "Primitive.squared":
   927  		if e.complexity.Primitive.Squared == nil {
   928  			break
   929  		}
   930  
   931  		return e.complexity.Primitive.Squared(childComplexity), true
   932  
   933  	case "Primitive.value":
   934  		if e.complexity.Primitive.Value == nil {
   935  			break
   936  		}
   937  
   938  		return e.complexity.Primitive.Value(childComplexity), true
   939  
   940  	case "PrimitiveString.doubled":
   941  		if e.complexity.PrimitiveString.Doubled == nil {
   942  			break
   943  		}
   944  
   945  		return e.complexity.PrimitiveString.Doubled(childComplexity), true
   946  
   947  	case "PrimitiveString.len":
   948  		if e.complexity.PrimitiveString.Len == nil {
   949  			break
   950  		}
   951  
   952  		return e.complexity.PrimitiveString.Len(childComplexity), true
   953  
   954  	case "PrimitiveString.value":
   955  		if e.complexity.PrimitiveString.Value == nil {
   956  			break
   957  		}
   958  
   959  		return e.complexity.PrimitiveString.Value(childComplexity), true
   960  
   961  	case "Query.animal":
   962  		if e.complexity.Query.Animal == nil {
   963  			break
   964  		}
   965  
   966  		return e.complexity.Query.Animal(childComplexity), true
   967  
   968  	case "Query.autobind":
   969  		if e.complexity.Query.Autobind == nil {
   970  			break
   971  		}
   972  
   973  		return e.complexity.Query.Autobind(childComplexity), true
   974  
   975  	case "Query.collision":
   976  		if e.complexity.Query.Collision == nil {
   977  			break
   978  		}
   979  
   980  		return e.complexity.Query.Collision(childComplexity), true
   981  
   982  	case "Query.defaultScalar":
   983  		if e.complexity.Query.DefaultScalar == nil {
   984  			break
   985  		}
   986  
   987  		args, err := ec.field_Query_defaultScalar_args(context.TODO(), rawArgs)
   988  		if err != nil {
   989  			return 0, false
   990  		}
   991  
   992  		return e.complexity.Query.DefaultScalar(childComplexity, args["arg"].(string)), true
   993  
   994  	case "Query.deprecatedField":
   995  		if e.complexity.Query.DeprecatedField == nil {
   996  			break
   997  		}
   998  
   999  		return e.complexity.Query.DeprecatedField(childComplexity), true
  1000  
  1001  	case "Query.directiveArg":
  1002  		if e.complexity.Query.DirectiveArg == nil {
  1003  			break
  1004  		}
  1005  
  1006  		args, err := ec.field_Query_directiveArg_args(context.TODO(), rawArgs)
  1007  		if err != nil {
  1008  			return 0, false
  1009  		}
  1010  
  1011  		return e.complexity.Query.DirectiveArg(childComplexity, args["arg"].(string)), true
  1012  
  1013  	case "Query.directiveDouble":
  1014  		if e.complexity.Query.DirectiveDouble == nil {
  1015  			break
  1016  		}
  1017  
  1018  		return e.complexity.Query.DirectiveDouble(childComplexity), true
  1019  
  1020  	case "Query.directiveField":
  1021  		if e.complexity.Query.DirectiveField == nil {
  1022  			break
  1023  		}
  1024  
  1025  		return e.complexity.Query.DirectiveField(childComplexity), true
  1026  
  1027  	case "Query.directiveFieldDef":
  1028  		if e.complexity.Query.DirectiveFieldDef == nil {
  1029  			break
  1030  		}
  1031  
  1032  		args, err := ec.field_Query_directiveFieldDef_args(context.TODO(), rawArgs)
  1033  		if err != nil {
  1034  			return 0, false
  1035  		}
  1036  
  1037  		return e.complexity.Query.DirectiveFieldDef(childComplexity, args["ret"].(string)), true
  1038  
  1039  	case "Query.directiveInput":
  1040  		if e.complexity.Query.DirectiveInput == nil {
  1041  			break
  1042  		}
  1043  
  1044  		args, err := ec.field_Query_directiveInput_args(context.TODO(), rawArgs)
  1045  		if err != nil {
  1046  			return 0, false
  1047  		}
  1048  
  1049  		return e.complexity.Query.DirectiveInput(childComplexity, args["arg"].(InputDirectives)), true
  1050  
  1051  	case "Query.directiveInputNullable":
  1052  		if e.complexity.Query.DirectiveInputNullable == nil {
  1053  			break
  1054  		}
  1055  
  1056  		args, err := ec.field_Query_directiveInputNullable_args(context.TODO(), rawArgs)
  1057  		if err != nil {
  1058  			return 0, false
  1059  		}
  1060  
  1061  		return e.complexity.Query.DirectiveInputNullable(childComplexity, args["arg"].(*InputDirectives)), true
  1062  
  1063  	case "Query.directiveInputType":
  1064  		if e.complexity.Query.DirectiveInputType == nil {
  1065  			break
  1066  		}
  1067  
  1068  		args, err := ec.field_Query_directiveInputType_args(context.TODO(), rawArgs)
  1069  		if err != nil {
  1070  			return 0, false
  1071  		}
  1072  
  1073  		return e.complexity.Query.DirectiveInputType(childComplexity, args["arg"].(InnerInput)), true
  1074  
  1075  	case "Query.directiveNullableArg":
  1076  		if e.complexity.Query.DirectiveNullableArg == nil {
  1077  			break
  1078  		}
  1079  
  1080  		args, err := ec.field_Query_directiveNullableArg_args(context.TODO(), rawArgs)
  1081  		if err != nil {
  1082  			return 0, false
  1083  		}
  1084  
  1085  		return e.complexity.Query.DirectiveNullableArg(childComplexity, args["arg"].(*int), args["arg2"].(*int), args["arg3"].(*string)), true
  1086  
  1087  	case "Query.directiveObject":
  1088  		if e.complexity.Query.DirectiveObject == nil {
  1089  			break
  1090  		}
  1091  
  1092  		return e.complexity.Query.DirectiveObject(childComplexity), true
  1093  
  1094  	case "Query.directiveObjectWithCustomGoModel":
  1095  		if e.complexity.Query.DirectiveObjectWithCustomGoModel == nil {
  1096  			break
  1097  		}
  1098  
  1099  		return e.complexity.Query.DirectiveObjectWithCustomGoModel(childComplexity), true
  1100  
  1101  	case "Query.directiveUnimplemented":
  1102  		if e.complexity.Query.DirectiveUnimplemented == nil {
  1103  			break
  1104  		}
  1105  
  1106  		return e.complexity.Query.DirectiveUnimplemented(childComplexity), true
  1107  
  1108  	case "Query.embeddedCase1":
  1109  		if e.complexity.Query.EmbeddedCase1 == nil {
  1110  			break
  1111  		}
  1112  
  1113  		return e.complexity.Query.EmbeddedCase1(childComplexity), true
  1114  
  1115  	case "Query.embeddedCase2":
  1116  		if e.complexity.Query.EmbeddedCase2 == nil {
  1117  			break
  1118  		}
  1119  
  1120  		return e.complexity.Query.EmbeddedCase2(childComplexity), true
  1121  
  1122  	case "Query.embeddedCase3":
  1123  		if e.complexity.Query.EmbeddedCase3 == nil {
  1124  			break
  1125  		}
  1126  
  1127  		return e.complexity.Query.EmbeddedCase3(childComplexity), true
  1128  
  1129  	case "Query.enumInInput":
  1130  		if e.complexity.Query.EnumInInput == nil {
  1131  			break
  1132  		}
  1133  
  1134  		args, err := ec.field_Query_enumInInput_args(context.TODO(), rawArgs)
  1135  		if err != nil {
  1136  			return 0, false
  1137  		}
  1138  
  1139  		return e.complexity.Query.EnumInInput(childComplexity, args["input"].(*InputWithEnumValue)), true
  1140  
  1141  	case "Query.errorBubble":
  1142  		if e.complexity.Query.ErrorBubble == nil {
  1143  			break
  1144  		}
  1145  
  1146  		return e.complexity.Query.ErrorBubble(childComplexity), true
  1147  
  1148  	case "Query.errors":
  1149  		if e.complexity.Query.Errors == nil {
  1150  			break
  1151  		}
  1152  
  1153  		return e.complexity.Query.Errors(childComplexity), true
  1154  
  1155  	case "Query.fallback":
  1156  		if e.complexity.Query.Fallback == nil {
  1157  			break
  1158  		}
  1159  
  1160  		args, err := ec.field_Query_fallback_args(context.TODO(), rawArgs)
  1161  		if err != nil {
  1162  			return 0, false
  1163  		}
  1164  
  1165  		return e.complexity.Query.Fallback(childComplexity, args["arg"].(FallbackToStringEncoding)), true
  1166  
  1167  	case "Query.inputSlice":
  1168  		if e.complexity.Query.InputSlice == nil {
  1169  			break
  1170  		}
  1171  
  1172  		args, err := ec.field_Query_inputSlice_args(context.TODO(), rawArgs)
  1173  		if err != nil {
  1174  			return 0, false
  1175  		}
  1176  
  1177  		return e.complexity.Query.InputSlice(childComplexity, args["arg"].([]string)), true
  1178  
  1179  	case "Query.invalidIdentifier":
  1180  		if e.complexity.Query.InvalidIdentifier == nil {
  1181  			break
  1182  		}
  1183  
  1184  		return e.complexity.Query.InvalidIdentifier(childComplexity), true
  1185  
  1186  	case "Query.issue896a":
  1187  		if e.complexity.Query.Issue896a == nil {
  1188  			break
  1189  		}
  1190  
  1191  		return e.complexity.Query.Issue896a(childComplexity), true
  1192  
  1193  	case "Query.mapInput":
  1194  		if e.complexity.Query.MapInput == nil {
  1195  			break
  1196  		}
  1197  
  1198  		args, err := ec.field_Query_mapInput_args(context.TODO(), rawArgs)
  1199  		if err != nil {
  1200  			return 0, false
  1201  		}
  1202  
  1203  		return e.complexity.Query.MapInput(childComplexity, args["input"].(map[string]interface{})), true
  1204  
  1205  	case "Query.mapNestedStringInterface":
  1206  		if e.complexity.Query.MapNestedStringInterface == nil {
  1207  			break
  1208  		}
  1209  
  1210  		args, err := ec.field_Query_mapNestedStringInterface_args(context.TODO(), rawArgs)
  1211  		if err != nil {
  1212  			return 0, false
  1213  		}
  1214  
  1215  		return e.complexity.Query.MapNestedStringInterface(childComplexity, args["in"].(*NestedMapInput)), true
  1216  
  1217  	case "Query.mapStringInterface":
  1218  		if e.complexity.Query.MapStringInterface == nil {
  1219  			break
  1220  		}
  1221  
  1222  		args, err := ec.field_Query_mapStringInterface_args(context.TODO(), rawArgs)
  1223  		if err != nil {
  1224  			return 0, false
  1225  		}
  1226  
  1227  		return e.complexity.Query.MapStringInterface(childComplexity, args["in"].(map[string]interface{})), true
  1228  
  1229  	case "Query.modelMethods":
  1230  		if e.complexity.Query.ModelMethods == nil {
  1231  			break
  1232  		}
  1233  
  1234  		return e.complexity.Query.ModelMethods(childComplexity), true
  1235  
  1236  	case "Query.nestedInputs":
  1237  		if e.complexity.Query.NestedInputs == nil {
  1238  			break
  1239  		}
  1240  
  1241  		args, err := ec.field_Query_nestedInputs_args(context.TODO(), rawArgs)
  1242  		if err != nil {
  1243  			return 0, false
  1244  		}
  1245  
  1246  		return e.complexity.Query.NestedInputs(childComplexity, args["input"].([][]*OuterInput)), true
  1247  
  1248  	case "Query.nestedOutputs":
  1249  		if e.complexity.Query.NestedOutputs == nil {
  1250  			break
  1251  		}
  1252  
  1253  		return e.complexity.Query.NestedOutputs(childComplexity), true
  1254  
  1255  	case "Query.noShape":
  1256  		if e.complexity.Query.NoShape == nil {
  1257  			break
  1258  		}
  1259  
  1260  		return e.complexity.Query.NoShape(childComplexity), true
  1261  
  1262  	case "Query.noShapeTypedNil":
  1263  		if e.complexity.Query.NoShapeTypedNil == nil {
  1264  			break
  1265  		}
  1266  
  1267  		return e.complexity.Query.NoShapeTypedNil(childComplexity), true
  1268  
  1269  	case "Query.node":
  1270  		if e.complexity.Query.Node == nil {
  1271  			break
  1272  		}
  1273  
  1274  		return e.complexity.Query.Node(childComplexity), true
  1275  
  1276  	case "Query.notAnInterface":
  1277  		if e.complexity.Query.NotAnInterface == nil {
  1278  			break
  1279  		}
  1280  
  1281  		return e.complexity.Query.NotAnInterface(childComplexity), true
  1282  
  1283  	case "Query.nullableArg":
  1284  		if e.complexity.Query.NullableArg == nil {
  1285  			break
  1286  		}
  1287  
  1288  		args, err := ec.field_Query_nullableArg_args(context.TODO(), rawArgs)
  1289  		if err != nil {
  1290  			return 0, false
  1291  		}
  1292  
  1293  		return e.complexity.Query.NullableArg(childComplexity, args["arg"].(*int)), true
  1294  
  1295  	case "Query.optionalUnion":
  1296  		if e.complexity.Query.OptionalUnion == nil {
  1297  			break
  1298  		}
  1299  
  1300  		return e.complexity.Query.OptionalUnion(childComplexity), true
  1301  
  1302  	case "Query.overlapping":
  1303  		if e.complexity.Query.Overlapping == nil {
  1304  			break
  1305  		}
  1306  
  1307  		return e.complexity.Query.Overlapping(childComplexity), true
  1308  
  1309  	case "Query.panics":
  1310  		if e.complexity.Query.Panics == nil {
  1311  			break
  1312  		}
  1313  
  1314  		return e.complexity.Query.Panics(childComplexity), true
  1315  
  1316  	case "Query.primitiveObject":
  1317  		if e.complexity.Query.PrimitiveObject == nil {
  1318  			break
  1319  		}
  1320  
  1321  		return e.complexity.Query.PrimitiveObject(childComplexity), true
  1322  
  1323  	case "Query.primitiveStringObject":
  1324  		if e.complexity.Query.PrimitiveStringObject == nil {
  1325  			break
  1326  		}
  1327  
  1328  		return e.complexity.Query.PrimitiveStringObject(childComplexity), true
  1329  
  1330  	case "Query.recursive":
  1331  		if e.complexity.Query.Recursive == nil {
  1332  			break
  1333  		}
  1334  
  1335  		args, err := ec.field_Query_recursive_args(context.TODO(), rawArgs)
  1336  		if err != nil {
  1337  			return 0, false
  1338  		}
  1339  
  1340  		return e.complexity.Query.Recursive(childComplexity, args["input"].(*RecursiveInputSlice)), true
  1341  
  1342  	case "Query.scalarSlice":
  1343  		if e.complexity.Query.ScalarSlice == nil {
  1344  			break
  1345  		}
  1346  
  1347  		return e.complexity.Query.ScalarSlice(childComplexity), true
  1348  
  1349  	case "Query.shapeUnion":
  1350  		if e.complexity.Query.ShapeUnion == nil {
  1351  			break
  1352  		}
  1353  
  1354  		return e.complexity.Query.ShapeUnion(childComplexity), true
  1355  
  1356  	case "Query.shapes":
  1357  		if e.complexity.Query.Shapes == nil {
  1358  			break
  1359  		}
  1360  
  1361  		return e.complexity.Query.Shapes(childComplexity), true
  1362  
  1363  	case "Query.slices":
  1364  		if e.complexity.Query.Slices == nil {
  1365  			break
  1366  		}
  1367  
  1368  		return e.complexity.Query.Slices(childComplexity), true
  1369  
  1370  	case "Query.user":
  1371  		if e.complexity.Query.User == nil {
  1372  			break
  1373  		}
  1374  
  1375  		args, err := ec.field_Query_user_args(context.TODO(), rawArgs)
  1376  		if err != nil {
  1377  			return 0, false
  1378  		}
  1379  
  1380  		return e.complexity.Query.User(childComplexity, args["id"].(int)), true
  1381  
  1382  	case "Query.valid":
  1383  		if e.complexity.Query.Valid == nil {
  1384  			break
  1385  		}
  1386  
  1387  		return e.complexity.Query.Valid(childComplexity), true
  1388  
  1389  	case "Query.validType":
  1390  		if e.complexity.Query.ValidType == nil {
  1391  			break
  1392  		}
  1393  
  1394  		return e.complexity.Query.ValidType(childComplexity), true
  1395  
  1396  	case "Query.wrappedScalar":
  1397  		if e.complexity.Query.WrappedScalar == nil {
  1398  			break
  1399  		}
  1400  
  1401  		return e.complexity.Query.WrappedScalar(childComplexity), true
  1402  
  1403  	case "Query.wrappedStruct":
  1404  		if e.complexity.Query.WrappedStruct == nil {
  1405  			break
  1406  		}
  1407  
  1408  		return e.complexity.Query.WrappedStruct(childComplexity), true
  1409  
  1410  	case "Rectangle.area":
  1411  		if e.complexity.Rectangle.Area == nil {
  1412  			break
  1413  		}
  1414  
  1415  		return e.complexity.Rectangle.Area(childComplexity), true
  1416  
  1417  	case "Rectangle.length":
  1418  		if e.complexity.Rectangle.Length == nil {
  1419  			break
  1420  		}
  1421  
  1422  		return e.complexity.Rectangle.Length(childComplexity), true
  1423  
  1424  	case "Rectangle.width":
  1425  		if e.complexity.Rectangle.Width == nil {
  1426  			break
  1427  		}
  1428  
  1429  		return e.complexity.Rectangle.Width(childComplexity), true
  1430  
  1431  	case "Slices.test1":
  1432  		if e.complexity.Slices.Test1 == nil {
  1433  			break
  1434  		}
  1435  
  1436  		return e.complexity.Slices.Test1(childComplexity), true
  1437  
  1438  	case "Slices.test2":
  1439  		if e.complexity.Slices.Test2 == nil {
  1440  			break
  1441  		}
  1442  
  1443  		return e.complexity.Slices.Test2(childComplexity), true
  1444  
  1445  	case "Slices.test3":
  1446  		if e.complexity.Slices.Test3 == nil {
  1447  			break
  1448  		}
  1449  
  1450  		return e.complexity.Slices.Test3(childComplexity), true
  1451  
  1452  	case "Slices.test4":
  1453  		if e.complexity.Slices.Test4 == nil {
  1454  			break
  1455  		}
  1456  
  1457  		return e.complexity.Slices.Test4(childComplexity), true
  1458  
  1459  	case "Subscription.directiveArg":
  1460  		if e.complexity.Subscription.DirectiveArg == nil {
  1461  			break
  1462  		}
  1463  
  1464  		args, err := ec.field_Subscription_directiveArg_args(context.TODO(), rawArgs)
  1465  		if err != nil {
  1466  			return 0, false
  1467  		}
  1468  
  1469  		return e.complexity.Subscription.DirectiveArg(childComplexity, args["arg"].(string)), true
  1470  
  1471  	case "Subscription.directiveDouble":
  1472  		if e.complexity.Subscription.DirectiveDouble == nil {
  1473  			break
  1474  		}
  1475  
  1476  		return e.complexity.Subscription.DirectiveDouble(childComplexity), true
  1477  
  1478  	case "Subscription.directiveNullableArg":
  1479  		if e.complexity.Subscription.DirectiveNullableArg == nil {
  1480  			break
  1481  		}
  1482  
  1483  		args, err := ec.field_Subscription_directiveNullableArg_args(context.TODO(), rawArgs)
  1484  		if err != nil {
  1485  			return 0, false
  1486  		}
  1487  
  1488  		return e.complexity.Subscription.DirectiveNullableArg(childComplexity, args["arg"].(*int), args["arg2"].(*int), args["arg3"].(*string)), true
  1489  
  1490  	case "Subscription.directiveUnimplemented":
  1491  		if e.complexity.Subscription.DirectiveUnimplemented == nil {
  1492  			break
  1493  		}
  1494  
  1495  		return e.complexity.Subscription.DirectiveUnimplemented(childComplexity), true
  1496  
  1497  	case "Subscription.initPayload":
  1498  		if e.complexity.Subscription.InitPayload == nil {
  1499  			break
  1500  		}
  1501  
  1502  		return e.complexity.Subscription.InitPayload(childComplexity), true
  1503  
  1504  	case "Subscription.issue896b":
  1505  		if e.complexity.Subscription.Issue896b == nil {
  1506  			break
  1507  		}
  1508  
  1509  		return e.complexity.Subscription.Issue896b(childComplexity), true
  1510  
  1511  	case "Subscription.updated":
  1512  		if e.complexity.Subscription.Updated == nil {
  1513  			break
  1514  		}
  1515  
  1516  		return e.complexity.Subscription.Updated(childComplexity), true
  1517  
  1518  	case "User.created":
  1519  		if e.complexity.User.Created == nil {
  1520  			break
  1521  		}
  1522  
  1523  		return e.complexity.User.Created(childComplexity), true
  1524  
  1525  	case "User.friends":
  1526  		if e.complexity.User.Friends == nil {
  1527  			break
  1528  		}
  1529  
  1530  		return e.complexity.User.Friends(childComplexity), true
  1531  
  1532  	case "User.id":
  1533  		if e.complexity.User.ID == nil {
  1534  			break
  1535  		}
  1536  
  1537  		return e.complexity.User.ID(childComplexity), true
  1538  
  1539  	case "User.updated":
  1540  		if e.complexity.User.Updated == nil {
  1541  			break
  1542  		}
  1543  
  1544  		return e.complexity.User.Updated(childComplexity), true
  1545  
  1546  	case "ValidType.differentCase":
  1547  		if e.complexity.ValidType.DifferentCase == nil {
  1548  			break
  1549  		}
  1550  
  1551  		return e.complexity.ValidType.DifferentCase(childComplexity), true
  1552  
  1553  	case "ValidType.different_case":
  1554  		if e.complexity.ValidType.DifferentCaseOld == nil {
  1555  			break
  1556  		}
  1557  
  1558  		return e.complexity.ValidType.DifferentCaseOld(childComplexity), true
  1559  
  1560  	case "ValidType.validArgs":
  1561  		if e.complexity.ValidType.ValidArgs == nil {
  1562  			break
  1563  		}
  1564  
  1565  		args, err := ec.field_ValidType_validArgs_args(context.TODO(), rawArgs)
  1566  		if err != nil {
  1567  			return 0, false
  1568  		}
  1569  
  1570  		return e.complexity.ValidType.ValidArgs(childComplexity, args["break"].(string), args["default"].(string), args["func"].(string), args["interface"].(string), args["select"].(string), args["case"].(string), args["defer"].(string), args["go"].(string), args["map"].(string), args["struct"].(string), args["chan"].(string), args["else"].(string), args["goto"].(string), args["package"].(string), args["switch"].(string), args["const"].(string), args["fallthrough"].(string), args["if"].(string), args["range"].(string), args["type"].(string), args["continue"].(string), args["for"].(string), args["import"].(string), args["return"].(string), args["var"].(string), args["_"].(string)), true
  1571  
  1572  	case "ValidType.validInputKeywords":
  1573  		if e.complexity.ValidType.ValidInputKeywords == nil {
  1574  			break
  1575  		}
  1576  
  1577  		args, err := ec.field_ValidType_validInputKeywords_args(context.TODO(), rawArgs)
  1578  		if err != nil {
  1579  			return 0, false
  1580  		}
  1581  
  1582  		return e.complexity.ValidType.ValidInputKeywords(childComplexity, args["input"].(*ValidInput)), true
  1583  
  1584  	case "WrappedStruct.name":
  1585  		if e.complexity.WrappedStruct.Name == nil {
  1586  			break
  1587  		}
  1588  
  1589  		return e.complexity.WrappedStruct.Name(childComplexity), true
  1590  
  1591  	case "XXIt.id":
  1592  		if e.complexity.XXIt.ID == nil {
  1593  			break
  1594  		}
  1595  
  1596  		return e.complexity.XXIt.ID(childComplexity), true
  1597  
  1598  	case "XxIt.id":
  1599  		if e.complexity.XxIt.ID == nil {
  1600  			break
  1601  		}
  1602  
  1603  		return e.complexity.XxIt.ID(childComplexity), true
  1604  
  1605  	case "asdfIt.id":
  1606  		if e.complexity.AsdfIt.ID == nil {
  1607  			break
  1608  		}
  1609  
  1610  		return e.complexity.AsdfIt.ID(childComplexity), true
  1611  
  1612  	case "iIt.id":
  1613  		if e.complexity.IIt.ID == nil {
  1614  			break
  1615  		}
  1616  
  1617  		return e.complexity.IIt.ID(childComplexity), true
  1618  
  1619  	}
  1620  	return 0, false
  1621  }
  1622  
  1623  func (e *executableSchema) Exec(ctx context.Context) graphql.ResponseHandler {
  1624  	rc := graphql.GetOperationContext(ctx)
  1625  	ec := executionContext{rc, e}
  1626  	first := true
  1627  
  1628  	switch rc.Operation.Operation {
  1629  	case ast.Query:
  1630  		return func(ctx context.Context) *graphql.Response {
  1631  			if !first {
  1632  				return nil
  1633  			}
  1634  			first = false
  1635  			data := ec._Query(ctx, rc.Operation.SelectionSet)
  1636  			var buf bytes.Buffer
  1637  			data.MarshalGQL(&buf)
  1638  
  1639  			return &graphql.Response{
  1640  				Data: buf.Bytes(),
  1641  			}
  1642  		}
  1643  	case ast.Subscription:
  1644  		next := ec._Subscription(ctx, rc.Operation.SelectionSet)
  1645  
  1646  		var buf bytes.Buffer
  1647  		return func(ctx context.Context) *graphql.Response {
  1648  			buf.Reset()
  1649  			data := next()
  1650  
  1651  			if data == nil {
  1652  				return nil
  1653  			}
  1654  			data.MarshalGQL(&buf)
  1655  
  1656  			return &graphql.Response{
  1657  				Data: buf.Bytes(),
  1658  			}
  1659  		}
  1660  
  1661  	default:
  1662  		return graphql.OneShot(graphql.ErrorResponse(ctx, "unsupported GraphQL operation"))
  1663  	}
  1664  }
  1665  
  1666  type executionContext struct {
  1667  	*graphql.OperationContext
  1668  	*executableSchema
  1669  }
  1670  
  1671  func (ec *executionContext) introspectSchema() (*introspection.Schema, error) {
  1672  	if ec.DisableIntrospection {
  1673  		return nil, errors.New("introspection disabled")
  1674  	}
  1675  	return introspection.WrapSchema(parsedSchema), nil
  1676  }
  1677  
  1678  func (ec *executionContext) introspectType(name string) (*introspection.Type, error) {
  1679  	if ec.DisableIntrospection {
  1680  		return nil, errors.New("introspection disabled")
  1681  	}
  1682  	return introspection.WrapTypeFromDef(parsedSchema, parsedSchema.Types[name]), nil
  1683  }
  1684  
  1685  var sources = []*ast.Source{
  1686  	&ast.Source{Name: "builtinscalar.graphql", Input: `
  1687  """
  1688  Since gqlgen defines default implementation for a Map scalar, this tests that the builtin is _not_
  1689  added to the TypeMap
  1690  """
  1691  type Map {
  1692      id: ID!
  1693  }
  1694  `, BuiltIn: false},
  1695  	&ast.Source{Name: "complexity.graphql", Input: `extend type Query {
  1696      overlapping: OverlappingFields
  1697  }
  1698  
  1699  type OverlappingFields {
  1700    oneFoo: Int! @goField(name: "foo")
  1701    twoFoo: Int! @goField(name: "foo")
  1702    oldFoo: Int! @goField(name: "foo", forceResolver: true)
  1703    newFoo: Int!
  1704    new_foo: Int!
  1705  }
  1706  `, BuiltIn: false},
  1707  	&ast.Source{Name: "directive.graphql", Input: `directive @length(min: Int!, max: Int, message: String) on ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | FIELD_DEFINITION
  1708  directive @range(min: Int = 0, max: Int) on ARGUMENT_DEFINITION
  1709  directive @custom on ARGUMENT_DEFINITION
  1710  directive @logged(id: UUID!) on FIELD
  1711  directive @toNull on ARGUMENT_DEFINITION | INPUT_FIELD_DEFINITION | FIELD_DEFINITION
  1712  directive @directive1 on FIELD_DEFINITION
  1713  directive @directive2 on FIELD_DEFINITION
  1714  directive @unimplemented on FIELD_DEFINITION
  1715  
  1716  extend type Query {
  1717      directiveArg(arg: String! @length(min:1, max: 255, message: "invalid length")): String
  1718      directiveNullableArg(arg: Int @range(min:0), arg2: Int @range, arg3: String @toNull): String
  1719      directiveInputNullable(arg: InputDirectives): String
  1720      directiveInput(arg: InputDirectives!): String
  1721      directiveInputType(arg: InnerInput! @custom): String
  1722      directiveObject: ObjectDirectives
  1723      directiveObjectWithCustomGoModel: ObjectDirectivesWithCustomGoModel
  1724      directiveFieldDef(ret: String!): String! @length(min: 1, message: "not valid")
  1725      directiveField: String
  1726      directiveDouble: String @directive1 @directive2
  1727      directiveUnimplemented: String @unimplemented
  1728  }
  1729  
  1730  extend type Subscription {
  1731      directiveArg(arg: String! @length(min:1, max: 255, message: "invalid length")): String
  1732      directiveNullableArg(arg: Int @range(min:0), arg2: Int @range, arg3: String @toNull): String
  1733      directiveDouble: String @directive1 @directive2
  1734      directiveUnimplemented: String @unimplemented
  1735  }
  1736  
  1737  input InputDirectives {
  1738      text: String! @length(min: 0, max: 7, message: "not valid")
  1739      nullableText: String @toNull
  1740      inner: InnerDirectives!
  1741      innerNullable: InnerDirectives
  1742      thirdParty: ThirdParty @length(min: 0, max: 7)
  1743  }
  1744  
  1745  input InnerDirectives {
  1746      message: String! @length(min: 1, message: "not valid")
  1747  }
  1748  
  1749  type ObjectDirectives {
  1750      text: String! @length(min: 0, max: 7, message: "not valid")
  1751      nullableText: String @toNull
  1752  }
  1753  
  1754  type ObjectDirectivesWithCustomGoModel {
  1755      nullableText: String @toNull
  1756  }
  1757  `, BuiltIn: false},
  1758  	&ast.Source{Name: "embedded.graphql", Input: `extend type Query {
  1759      embeddedCase1: EmbeddedCase1
  1760      embeddedCase2: EmbeddedCase2
  1761      embeddedCase3: EmbeddedCase3
  1762  }
  1763  
  1764  type EmbeddedCase1 @goModel(model:"testserver.EmbeddedCase1") {
  1765      exportedEmbeddedPointerExportedMethod: String!
  1766  }
  1767  
  1768  type EmbeddedCase2 @goModel(model:"testserver.EmbeddedCase2") {
  1769      unexportedEmbeddedPointerExportedMethod: String!
  1770  }
  1771  
  1772  type EmbeddedCase3 @goModel(model:"testserver.EmbeddedCase3") {
  1773      unexportedEmbeddedInterfaceExportedMethod: String!
  1774  }
  1775  `, BuiltIn: false},
  1776  	&ast.Source{Name: "enum.graphql", Input: `enum EnumTest {
  1777      OK
  1778      NG
  1779  }
  1780  
  1781  input InputWithEnumValue {
  1782      enum: EnumTest!
  1783  }
  1784  
  1785  extend type Query {
  1786      enumInInput(input: InputWithEnumValue): EnumTest!
  1787  }
  1788  `, BuiltIn: false},
  1789  	&ast.Source{Name: "interfaces.graphql", Input: `extend type Query {
  1790      shapes: [Shape]
  1791      noShape: Shape @makeNil
  1792      node: Node!
  1793      noShapeTypedNil: Shape @makeTypedNil
  1794      animal: Animal @makeTypedNil
  1795      notAnInterface: BackedByInterface
  1796  }
  1797  
  1798  interface Animal {
  1799      species: String!
  1800  }
  1801  
  1802  type BackedByInterface {
  1803      id: String!
  1804      thisShouldBind: String!
  1805      thisShouldBindWithError: String!
  1806  }
  1807  
  1808  type Dog implements Animal {
  1809      species: String!
  1810      dogBreed: String!
  1811  }
  1812  
  1813  type Cat implements Animal {
  1814      species: String!
  1815      catBreed: String!
  1816  }
  1817  
  1818  interface Shape {
  1819      area: Float
  1820  }
  1821  type Circle implements Shape {
  1822      radius: Float
  1823      area: Float
  1824  }
  1825  type Rectangle implements Shape {
  1826      length: Float
  1827      width: Float
  1828      area: Float
  1829  }
  1830  union ShapeUnion @goModel(model:"testserver.ShapeUnion") = Circle | Rectangle
  1831  
  1832  directive @makeNil on FIELD_DEFINITION
  1833  directive @makeTypedNil on FIELD_DEFINITION
  1834  
  1835  interface Node {
  1836      id: ID!
  1837      child: Node!
  1838  }
  1839  
  1840  type ConcreteNodeA implements Node {
  1841      id: ID!
  1842      child: Node!
  1843      name: String!
  1844  }
  1845  
  1846  """ Implements the Node interface with another interface """
  1847  type ConcreteNodeInterface implements Node {
  1848      id: ID!
  1849      child: Node!
  1850  }
  1851  `, BuiltIn: false},
  1852  	&ast.Source{Name: "issue896.graphql", Input: `# This example should build stable output. If the file content starts
  1853  # alternating nondeterministically between two outputs, then see
  1854  # https://git.sr.ht/~sircmpwn/gqlgen/issues/896.
  1855  
  1856  extend schema {
  1857    query: Query
  1858    subscription: Subscription
  1859  }
  1860  
  1861  type CheckIssue896 {id: Int}
  1862  
  1863  extend type Query {
  1864    issue896a: [CheckIssue896!] # Note the "!" or lack thereof.
  1865  }
  1866  
  1867  extend type Subscription {
  1868    issue896b: [CheckIssue896] # Note the "!" or lack thereof.
  1869  }
  1870  `, BuiltIn: false},
  1871  	&ast.Source{Name: "loops.graphql", Input: `type LoopA {
  1872      b: LoopB!
  1873  }
  1874  
  1875  type LoopB {
  1876      a: LoopA!
  1877  }
  1878  `, BuiltIn: false},
  1879  	&ast.Source{Name: "maps.graphql", Input: `extend type Query {
  1880      mapStringInterface(in: MapStringInterfaceInput): MapStringInterfaceType
  1881      mapNestedStringInterface(in: NestedMapInput): MapStringInterfaceType
  1882  }
  1883  
  1884  type MapStringInterfaceType @goModel(model: "map[string]interface{}") {
  1885      a: String
  1886      b: Int
  1887  }
  1888  
  1889  input MapStringInterfaceInput @goModel(model: "map[string]interface{}") {
  1890      a: String
  1891      b: Int
  1892  }
  1893  
  1894  input NestedMapInput {
  1895      map: MapStringInterfaceInput
  1896  }
  1897  `, BuiltIn: false},
  1898  	&ast.Source{Name: "nulls.graphql", Input: `extend type Query {
  1899      errorBubble: Error
  1900      errors: Errors
  1901      valid: String!
  1902  }
  1903  
  1904  type Errors {
  1905      a: Error!
  1906      b: Error!
  1907      c: Error!
  1908      d: Error!
  1909      e: Error!
  1910  }
  1911  
  1912  type Error {
  1913      id: ID!
  1914      errorOnNonRequiredField: String
  1915      errorOnRequiredField: String!
  1916      nilOnRequiredField: String!
  1917  }
  1918  `, BuiltIn: false},
  1919  	&ast.Source{Name: "panics.graphql", Input: `extend type Query {
  1920      panics: Panics
  1921  }
  1922  
  1923  type Panics {
  1924      fieldScalarMarshal: [MarshalPanic!]!
  1925      fieldFuncMarshal(u: [MarshalPanic!]!): [MarshalPanic!]!
  1926      argUnmarshal(u: [MarshalPanic!]!): Boolean!
  1927  
  1928  }
  1929  
  1930  scalar MarshalPanic
  1931  `, BuiltIn: false},
  1932  	&ast.Source{Name: "primitive_objects.graphql", Input: `extend type Query {
  1933      primitiveObject: [Primitive!]!
  1934      primitiveStringObject: [PrimitiveString!]!
  1935  }
  1936  
  1937  type Primitive {
  1938      value: Int!
  1939      squared: Int!
  1940  }
  1941  
  1942  type PrimitiveString {
  1943      value: String!
  1944      doubled: String!
  1945      len: Int!
  1946  }
  1947  `, BuiltIn: false},
  1948  	&ast.Source{Name: "scalar_default.graphql", Input: `extend type Query {
  1949      defaultScalar(arg: DefaultScalarImplementation! = "default"): DefaultScalarImplementation!
  1950  }
  1951  
  1952  """ This doesnt have an implementation in the typemap, so it should act like a string """
  1953  scalar DefaultScalarImplementation
  1954  
  1955  type EmbeddedDefaultScalar {
  1956      value: DefaultScalarImplementation
  1957  }
  1958  `, BuiltIn: false},
  1959  	&ast.Source{Name: "schema.graphql", Input: `directive @goModel(model: String, models: [String!]) on OBJECT | INPUT_OBJECT | SCALAR | ENUM | INTERFACE | UNION
  1960  directive @goField(forceResolver: Boolean, name: String) on INPUT_FIELD_DEFINITION | FIELD_DEFINITION
  1961  
  1962  type Query {
  1963      invalidIdentifier: InvalidIdentifier
  1964      collision: It
  1965      mapInput(input: Changes): Boolean
  1966      recursive(input: RecursiveInputSlice): Boolean
  1967      nestedInputs(input: [[OuterInput]] = [[{inner: {id: 1}}]]): Boolean
  1968      nestedOutputs: [[OuterObject]]
  1969      modelMethods: ModelMethods
  1970      user(id: Int!): User!
  1971      nullableArg(arg: Int = 123): String
  1972      inputSlice(arg: [String!]!): Boolean!
  1973      shapeUnion: ShapeUnion!
  1974      autobind: Autobind
  1975      deprecatedField: String! @deprecated(reason: "test deprecated directive")
  1976  }
  1977  
  1978  type Subscription {
  1979      updated: String!
  1980      initPayload: String!
  1981  }
  1982  
  1983  type User {
  1984      id: Int!
  1985      friends: [User!]! @goField(forceResolver: true)
  1986      created: Time!
  1987      updated: Time
  1988  }
  1989  
  1990  type Autobind {
  1991      int: Int!
  1992      int32: Int!
  1993      int64: Int!
  1994  
  1995      idStr: ID!
  1996      idInt: ID!
  1997  }
  1998  
  1999  type ModelMethods {
  2000      resolverField: Boolean!
  2001      noContext: Boolean!
  2002      withContext: Boolean!
  2003  }
  2004  
  2005  type InvalidIdentifier {
  2006      id: Int!
  2007  }
  2008  
  2009  type It {
  2010      id: ID!
  2011  }
  2012  
  2013  input Changes @goModel(model:"map[string]interface{}") {
  2014      a: Int
  2015      b: Int
  2016  }
  2017  
  2018  input RecursiveInputSlice {
  2019      self: [RecursiveInputSlice!]
  2020  }
  2021  
  2022  input InnerInput {
  2023      id:Int!
  2024  }
  2025  
  2026  input OuterInput {
  2027      inner: InnerInput!
  2028  }
  2029  
  2030  scalar ThirdParty @goModel(model:"testserver.ThirdParty")
  2031  
  2032  type OuterObject {
  2033      inner: InnerObject!
  2034  }
  2035  
  2036  type InnerObject {
  2037      id: Int!
  2038  }
  2039  
  2040  type ForcedResolver {
  2041      field: Circle @goField(forceResolver: true)
  2042  }
  2043  
  2044  type EmbeddedPointer @goModel(model:"testserver.EmbeddedPointerModel") {
  2045      ID: String
  2046      Title: String
  2047  }
  2048  
  2049  scalar UUID
  2050  
  2051  enum Status {
  2052      OK
  2053      ERROR
  2054  }
  2055  
  2056  scalar Time
  2057  `, BuiltIn: false},
  2058  	&ast.Source{Name: "slices.graphql", Input: `extend type Query {
  2059      slices: Slices
  2060      scalarSlice: Bytes!
  2061  }
  2062  
  2063  type Slices {
  2064    test1: [String]
  2065    test2: [String!]
  2066    test3: [String]!
  2067    test4: [String!]!
  2068  }
  2069  
  2070  scalar Bytes
  2071  `, BuiltIn: false},
  2072  	&ast.Source{Name: "typefallback.graphql", Input: `extend type Query {
  2073      fallback(arg: FallbackToStringEncoding!): FallbackToStringEncoding!
  2074  }
  2075  
  2076  enum FallbackToStringEncoding {
  2077      A
  2078      B
  2079      C
  2080  }
  2081  `, BuiltIn: false},
  2082  	&ast.Source{Name: "useptr.graphql", Input: `type A {
  2083      id: ID!
  2084  }
  2085  
  2086  type B {
  2087      id: ID!
  2088  }
  2089  
  2090  union TestUnion = A | B
  2091  
  2092  extend type Query {
  2093      optionalUnion: TestUnion
  2094  }
  2095  `, BuiltIn: false},
  2096  	&ast.Source{Name: "validtypes.graphql", Input: `extend type Query {
  2097      validType: ValidType
  2098  }
  2099  
  2100  """ These things are all valid, but without care generate invalid go code """
  2101  type ValidType {
  2102      differentCase: String!
  2103      different_case: String! @goField(name:"DifferentCaseOld")
  2104      validInputKeywords(input: ValidInput): Boolean!
  2105      validArgs(
  2106          break:       String!,
  2107          default:     String!,
  2108          func:        String!,
  2109          interface:   String!,
  2110          select:      String!,
  2111          case:        String!,
  2112          defer:       String!,
  2113          go:          String!,
  2114          map:         String!,
  2115          struct:      String!,
  2116          chan:        String!,
  2117          else:        String!,
  2118          goto:        String!,
  2119          package:     String!,
  2120          switch:      String!,
  2121          const:       String!,
  2122          fallthrough: String!,
  2123          if:          String!,
  2124          range:       String!,
  2125          type:        String!,
  2126          continue:    String!,
  2127          for:         String!,
  2128          import:      String!,
  2129          return:      String!,
  2130          var:         String!,
  2131          _:           String!,
  2132      ): Boolean!
  2133  }
  2134  
  2135  input ValidInput {
  2136      break:       String!
  2137      default:     String!
  2138      func:        String!
  2139      interface:   String!
  2140      select:      String!
  2141      case:        String!
  2142      defer:       String!
  2143      go:          String!
  2144      map:         String!
  2145      struct:      String!
  2146      chan:        String!
  2147      else:        String!
  2148      goto:        String!
  2149      package:     String!
  2150      switch:      String!
  2151      const:       String!
  2152      fallthrough: String!
  2153      if:          String!
  2154      range:       String!
  2155      type:        String!
  2156      continue:    String!
  2157      for:         String!
  2158      import:      String!
  2159      return:      String!
  2160      var:         String!
  2161      _:           String! @goField(name: "Underscore")
  2162  }
  2163  
  2164  # see https://git.sr.ht/~sircmpwn/gqlgen/issues/694
  2165  type Content_User {
  2166    foo: String
  2167  }
  2168  
  2169  type Content_Post {
  2170    foo: String
  2171  }
  2172  
  2173  union Content_Child = Content_User | Content_Post
  2174  `, BuiltIn: false},
  2175  	&ast.Source{Name: "weird_type_cases.graphql", Input: `# regression test for https://git.sr.ht/~sircmpwn/gqlgen/issues/583
  2176  
  2177  type asdfIt { id: ID! }
  2178  type iIt { id: ID! }
  2179  type AIt { id: ID! }
  2180  type XXIt { id: ID! }
  2181  type AbIt { id: ID! }
  2182  type XxIt { id: ID! }
  2183  `, BuiltIn: false},
  2184  	&ast.Source{Name: "wrapped_type.graphql", Input: `# regression test for https://git.sr.ht/~sircmpwn/gqlgen/issues/721
  2185  
  2186  extend type Query {
  2187      wrappedStruct: WrappedStruct!
  2188      wrappedScalar: WrappedScalar!
  2189  }
  2190  
  2191  type WrappedStruct { name: String! }
  2192  scalar WrappedScalar
  2193  `, BuiltIn: false},
  2194  }
  2195  var parsedSchema = gqlparser.MustLoadSchema(sources...)
  2196  
  2197  // endregion ************************** generated!.gotpl **************************
  2198  
  2199  // region    ***************************** args.gotpl *****************************
  2200  
  2201  func (ec *executionContext) dir_length_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2202  	var err error
  2203  	args := map[string]interface{}{}
  2204  	var arg0 int
  2205  	if tmp, ok := rawArgs["min"]; ok {
  2206  		arg0, err = ec.unmarshalNInt2int(ctx, tmp)
  2207  		if err != nil {
  2208  			return nil, err
  2209  		}
  2210  	}
  2211  	args["min"] = arg0
  2212  	var arg1 *int
  2213  	if tmp, ok := rawArgs["max"]; ok {
  2214  		arg1, err = ec.unmarshalOInt2ᚖint(ctx, tmp)
  2215  		if err != nil {
  2216  			return nil, err
  2217  		}
  2218  	}
  2219  	args["max"] = arg1
  2220  	var arg2 *string
  2221  	if tmp, ok := rawArgs["message"]; ok {
  2222  		arg2, err = ec.unmarshalOString2ᚖstring(ctx, tmp)
  2223  		if err != nil {
  2224  			return nil, err
  2225  		}
  2226  	}
  2227  	args["message"] = arg2
  2228  	return args, nil
  2229  }
  2230  
  2231  func (ec *executionContext) dir_logged_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2232  	var err error
  2233  	args := map[string]interface{}{}
  2234  	var arg0 string
  2235  	if tmp, ok := rawArgs["id"]; ok {
  2236  		arg0, err = ec.unmarshalNUUID2string(ctx, tmp)
  2237  		if err != nil {
  2238  			return nil, err
  2239  		}
  2240  	}
  2241  	args["id"] = arg0
  2242  	return args, nil
  2243  }
  2244  
  2245  func (ec *executionContext) dir_range_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2246  	var err error
  2247  	args := map[string]interface{}{}
  2248  	var arg0 *int
  2249  	if tmp, ok := rawArgs["min"]; ok {
  2250  		arg0, err = ec.unmarshalOInt2ᚖint(ctx, tmp)
  2251  		if err != nil {
  2252  			return nil, err
  2253  		}
  2254  	}
  2255  	args["min"] = arg0
  2256  	var arg1 *int
  2257  	if tmp, ok := rawArgs["max"]; ok {
  2258  		arg1, err = ec.unmarshalOInt2ᚖint(ctx, tmp)
  2259  		if err != nil {
  2260  			return nil, err
  2261  		}
  2262  	}
  2263  	args["max"] = arg1
  2264  	return args, nil
  2265  }
  2266  
  2267  func (ec *executionContext) field_Panics_argUnmarshal_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2268  	var err error
  2269  	args := map[string]interface{}{}
  2270  	var arg0 []MarshalPanic
  2271  	if tmp, ok := rawArgs["u"]; ok {
  2272  		arg0, err = ec.unmarshalNMarshalPanic2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanicᚄ(ctx, tmp)
  2273  		if err != nil {
  2274  			return nil, err
  2275  		}
  2276  	}
  2277  	args["u"] = arg0
  2278  	return args, nil
  2279  }
  2280  
  2281  func (ec *executionContext) field_Panics_fieldFuncMarshal_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2282  	var err error
  2283  	args := map[string]interface{}{}
  2284  	var arg0 []MarshalPanic
  2285  	if tmp, ok := rawArgs["u"]; ok {
  2286  		arg0, err = ec.unmarshalNMarshalPanic2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanicᚄ(ctx, tmp)
  2287  		if err != nil {
  2288  			return nil, err
  2289  		}
  2290  	}
  2291  	args["u"] = arg0
  2292  	return args, nil
  2293  }
  2294  
  2295  func (ec *executionContext) field_Query___type_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2296  	var err error
  2297  	args := map[string]interface{}{}
  2298  	var arg0 string
  2299  	if tmp, ok := rawArgs["name"]; ok {
  2300  		arg0, err = ec.unmarshalNString2string(ctx, tmp)
  2301  		if err != nil {
  2302  			return nil, err
  2303  		}
  2304  	}
  2305  	args["name"] = arg0
  2306  	return args, nil
  2307  }
  2308  
  2309  func (ec *executionContext) field_Query_defaultScalar_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2310  	var err error
  2311  	args := map[string]interface{}{}
  2312  	var arg0 string
  2313  	if tmp, ok := rawArgs["arg"]; ok {
  2314  		arg0, err = ec.unmarshalNDefaultScalarImplementation2string(ctx, tmp)
  2315  		if err != nil {
  2316  			return nil, err
  2317  		}
  2318  	}
  2319  	args["arg"] = arg0
  2320  	return args, nil
  2321  }
  2322  
  2323  func (ec *executionContext) field_Query_directiveArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2324  	var err error
  2325  	args := map[string]interface{}{}
  2326  	var arg0 string
  2327  	if tmp, ok := rawArgs["arg"]; ok {
  2328  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalNString2string(ctx, tmp) }
  2329  		directive1 := func(ctx context.Context) (interface{}, error) {
  2330  			min, err := ec.unmarshalNInt2int(ctx, 1)
  2331  			if err != nil {
  2332  				return nil, err
  2333  			}
  2334  			max, err := ec.unmarshalOInt2ᚖint(ctx, 255)
  2335  			if err != nil {
  2336  				return nil, err
  2337  			}
  2338  			message, err := ec.unmarshalOString2ᚖstring(ctx, "invalid length")
  2339  			if err != nil {
  2340  				return nil, err
  2341  			}
  2342  			if ec.directives.Length == nil {
  2343  				return nil, errors.New("directive length is not implemented")
  2344  			}
  2345  			return ec.directives.Length(ctx, rawArgs, directive0, min, max, message)
  2346  		}
  2347  
  2348  		tmp, err = directive1(ctx)
  2349  		if err != nil {
  2350  			return nil, err
  2351  		}
  2352  		if data, ok := tmp.(string); ok {
  2353  			arg0 = data
  2354  		} else {
  2355  			return nil, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  2356  		}
  2357  	}
  2358  	args["arg"] = arg0
  2359  	return args, nil
  2360  }
  2361  
  2362  func (ec *executionContext) field_Query_directiveFieldDef_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2363  	var err error
  2364  	args := map[string]interface{}{}
  2365  	var arg0 string
  2366  	if tmp, ok := rawArgs["ret"]; ok {
  2367  		arg0, err = ec.unmarshalNString2string(ctx, tmp)
  2368  		if err != nil {
  2369  			return nil, err
  2370  		}
  2371  	}
  2372  	args["ret"] = arg0
  2373  	return args, nil
  2374  }
  2375  
  2376  func (ec *executionContext) field_Query_directiveInputNullable_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2377  	var err error
  2378  	args := map[string]interface{}{}
  2379  	var arg0 *InputDirectives
  2380  	if tmp, ok := rawArgs["arg"]; ok {
  2381  		arg0, err = ec.unmarshalOInputDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputDirectives(ctx, tmp)
  2382  		if err != nil {
  2383  			return nil, err
  2384  		}
  2385  	}
  2386  	args["arg"] = arg0
  2387  	return args, nil
  2388  }
  2389  
  2390  func (ec *executionContext) field_Query_directiveInputType_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2391  	var err error
  2392  	args := map[string]interface{}{}
  2393  	var arg0 InnerInput
  2394  	if tmp, ok := rawArgs["arg"]; ok {
  2395  		directive0 := func(ctx context.Context) (interface{}, error) {
  2396  			return ec.unmarshalNInnerInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerInput(ctx, tmp)
  2397  		}
  2398  		directive1 := func(ctx context.Context) (interface{}, error) {
  2399  			if ec.directives.Custom == nil {
  2400  				return nil, errors.New("directive custom is not implemented")
  2401  			}
  2402  			return ec.directives.Custom(ctx, rawArgs, directive0)
  2403  		}
  2404  
  2405  		tmp, err = directive1(ctx)
  2406  		if err != nil {
  2407  			return nil, err
  2408  		}
  2409  		if data, ok := tmp.(InnerInput); ok {
  2410  			arg0 = data
  2411  		} else {
  2412  			return nil, fmt.Errorf(`unexpected type %T from directive, should be git.sr.ht/~sircmpwn/gqlgen/codegen/testserver.InnerInput`, tmp)
  2413  		}
  2414  	}
  2415  	args["arg"] = arg0
  2416  	return args, nil
  2417  }
  2418  
  2419  func (ec *executionContext) field_Query_directiveInput_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2420  	var err error
  2421  	args := map[string]interface{}{}
  2422  	var arg0 InputDirectives
  2423  	if tmp, ok := rawArgs["arg"]; ok {
  2424  		arg0, err = ec.unmarshalNInputDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputDirectives(ctx, tmp)
  2425  		if err != nil {
  2426  			return nil, err
  2427  		}
  2428  	}
  2429  	args["arg"] = arg0
  2430  	return args, nil
  2431  }
  2432  
  2433  func (ec *executionContext) field_Query_directiveNullableArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2434  	var err error
  2435  	args := map[string]interface{}{}
  2436  	var arg0 *int
  2437  	if tmp, ok := rawArgs["arg"]; ok {
  2438  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
  2439  		directive1 := func(ctx context.Context) (interface{}, error) {
  2440  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
  2441  			if err != nil {
  2442  				return nil, err
  2443  			}
  2444  			if ec.directives.Range == nil {
  2445  				return nil, errors.New("directive range is not implemented")
  2446  			}
  2447  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
  2448  		}
  2449  
  2450  		tmp, err = directive1(ctx)
  2451  		if err != nil {
  2452  			return nil, err
  2453  		}
  2454  		if data, ok := tmp.(*int); ok {
  2455  			arg0 = data
  2456  		} else if tmp == nil {
  2457  			arg0 = nil
  2458  		} else {
  2459  			return nil, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp)
  2460  		}
  2461  	}
  2462  	args["arg"] = arg0
  2463  	var arg1 *int
  2464  	if tmp, ok := rawArgs["arg2"]; ok {
  2465  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
  2466  		directive1 := func(ctx context.Context) (interface{}, error) {
  2467  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
  2468  			if err != nil {
  2469  				return nil, err
  2470  			}
  2471  			if ec.directives.Range == nil {
  2472  				return nil, errors.New("directive range is not implemented")
  2473  			}
  2474  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
  2475  		}
  2476  
  2477  		tmp, err = directive1(ctx)
  2478  		if err != nil {
  2479  			return nil, err
  2480  		}
  2481  		if data, ok := tmp.(*int); ok {
  2482  			arg1 = data
  2483  		} else if tmp == nil {
  2484  			arg1 = nil
  2485  		} else {
  2486  			return nil, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp)
  2487  		}
  2488  	}
  2489  	args["arg2"] = arg1
  2490  	var arg2 *string
  2491  	if tmp, ok := rawArgs["arg3"]; ok {
  2492  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOString2ᚖstring(ctx, tmp) }
  2493  		directive1 := func(ctx context.Context) (interface{}, error) {
  2494  			if ec.directives.ToNull == nil {
  2495  				return nil, errors.New("directive toNull is not implemented")
  2496  			}
  2497  			return ec.directives.ToNull(ctx, rawArgs, directive0)
  2498  		}
  2499  
  2500  		tmp, err = directive1(ctx)
  2501  		if err != nil {
  2502  			return nil, err
  2503  		}
  2504  		if data, ok := tmp.(*string); ok {
  2505  			arg2 = data
  2506  		} else if tmp == nil {
  2507  			arg2 = nil
  2508  		} else {
  2509  			return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  2510  		}
  2511  	}
  2512  	args["arg3"] = arg2
  2513  	return args, nil
  2514  }
  2515  
  2516  func (ec *executionContext) field_Query_enumInInput_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2517  	var err error
  2518  	args := map[string]interface{}{}
  2519  	var arg0 *InputWithEnumValue
  2520  	if tmp, ok := rawArgs["input"]; ok {
  2521  		arg0, err = ec.unmarshalOInputWithEnumValue2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputWithEnumValue(ctx, tmp)
  2522  		if err != nil {
  2523  			return nil, err
  2524  		}
  2525  	}
  2526  	args["input"] = arg0
  2527  	return args, nil
  2528  }
  2529  
  2530  func (ec *executionContext) field_Query_fallback_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2531  	var err error
  2532  	args := map[string]interface{}{}
  2533  	var arg0 FallbackToStringEncoding
  2534  	if tmp, ok := rawArgs["arg"]; ok {
  2535  		arg0, err = ec.unmarshalNFallbackToStringEncoding2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐFallbackToStringEncoding(ctx, tmp)
  2536  		if err != nil {
  2537  			return nil, err
  2538  		}
  2539  	}
  2540  	args["arg"] = arg0
  2541  	return args, nil
  2542  }
  2543  
  2544  func (ec *executionContext) field_Query_inputSlice_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2545  	var err error
  2546  	args := map[string]interface{}{}
  2547  	var arg0 []string
  2548  	if tmp, ok := rawArgs["arg"]; ok {
  2549  		arg0, err = ec.unmarshalNString2ᚕstringᚄ(ctx, tmp)
  2550  		if err != nil {
  2551  			return nil, err
  2552  		}
  2553  	}
  2554  	args["arg"] = arg0
  2555  	return args, nil
  2556  }
  2557  
  2558  func (ec *executionContext) field_Query_mapInput_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2559  	var err error
  2560  	args := map[string]interface{}{}
  2561  	var arg0 map[string]interface{}
  2562  	if tmp, ok := rawArgs["input"]; ok {
  2563  		arg0, err = ec.unmarshalOChanges2map(ctx, tmp)
  2564  		if err != nil {
  2565  			return nil, err
  2566  		}
  2567  	}
  2568  	args["input"] = arg0
  2569  	return args, nil
  2570  }
  2571  
  2572  func (ec *executionContext) field_Query_mapNestedStringInterface_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2573  	var err error
  2574  	args := map[string]interface{}{}
  2575  	var arg0 *NestedMapInput
  2576  	if tmp, ok := rawArgs["in"]; ok {
  2577  		arg0, err = ec.unmarshalONestedMapInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNestedMapInput(ctx, tmp)
  2578  		if err != nil {
  2579  			return nil, err
  2580  		}
  2581  	}
  2582  	args["in"] = arg0
  2583  	return args, nil
  2584  }
  2585  
  2586  func (ec *executionContext) field_Query_mapStringInterface_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2587  	var err error
  2588  	args := map[string]interface{}{}
  2589  	var arg0 map[string]interface{}
  2590  	if tmp, ok := rawArgs["in"]; ok {
  2591  		arg0, err = ec.unmarshalOMapStringInterfaceInput2map(ctx, tmp)
  2592  		if err != nil {
  2593  			return nil, err
  2594  		}
  2595  	}
  2596  	args["in"] = arg0
  2597  	return args, nil
  2598  }
  2599  
  2600  func (ec *executionContext) field_Query_nestedInputs_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2601  	var err error
  2602  	args := map[string]interface{}{}
  2603  	var arg0 [][]*OuterInput
  2604  	if tmp, ok := rawArgs["input"]; ok {
  2605  		arg0, err = ec.unmarshalOOuterInput2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx, tmp)
  2606  		if err != nil {
  2607  			return nil, err
  2608  		}
  2609  	}
  2610  	args["input"] = arg0
  2611  	return args, nil
  2612  }
  2613  
  2614  func (ec *executionContext) field_Query_nullableArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2615  	var err error
  2616  	args := map[string]interface{}{}
  2617  	var arg0 *int
  2618  	if tmp, ok := rawArgs["arg"]; ok {
  2619  		arg0, err = ec.unmarshalOInt2ᚖint(ctx, tmp)
  2620  		if err != nil {
  2621  			return nil, err
  2622  		}
  2623  	}
  2624  	args["arg"] = arg0
  2625  	return args, nil
  2626  }
  2627  
  2628  func (ec *executionContext) field_Query_recursive_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2629  	var err error
  2630  	args := map[string]interface{}{}
  2631  	var arg0 *RecursiveInputSlice
  2632  	if tmp, ok := rawArgs["input"]; ok {
  2633  		arg0, err = ec.unmarshalORecursiveInputSlice2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSlice(ctx, tmp)
  2634  		if err != nil {
  2635  			return nil, err
  2636  		}
  2637  	}
  2638  	args["input"] = arg0
  2639  	return args, nil
  2640  }
  2641  
  2642  func (ec *executionContext) field_Query_user_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2643  	var err error
  2644  	args := map[string]interface{}{}
  2645  	var arg0 int
  2646  	if tmp, ok := rawArgs["id"]; ok {
  2647  		arg0, err = ec.unmarshalNInt2int(ctx, tmp)
  2648  		if err != nil {
  2649  			return nil, err
  2650  		}
  2651  	}
  2652  	args["id"] = arg0
  2653  	return args, nil
  2654  }
  2655  
  2656  func (ec *executionContext) field_Subscription_directiveArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2657  	var err error
  2658  	args := map[string]interface{}{}
  2659  	var arg0 string
  2660  	if tmp, ok := rawArgs["arg"]; ok {
  2661  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalNString2string(ctx, tmp) }
  2662  		directive1 := func(ctx context.Context) (interface{}, error) {
  2663  			min, err := ec.unmarshalNInt2int(ctx, 1)
  2664  			if err != nil {
  2665  				return nil, err
  2666  			}
  2667  			max, err := ec.unmarshalOInt2ᚖint(ctx, 255)
  2668  			if err != nil {
  2669  				return nil, err
  2670  			}
  2671  			message, err := ec.unmarshalOString2ᚖstring(ctx, "invalid length")
  2672  			if err != nil {
  2673  				return nil, err
  2674  			}
  2675  			if ec.directives.Length == nil {
  2676  				return nil, errors.New("directive length is not implemented")
  2677  			}
  2678  			return ec.directives.Length(ctx, rawArgs, directive0, min, max, message)
  2679  		}
  2680  
  2681  		tmp, err = directive1(ctx)
  2682  		if err != nil {
  2683  			return nil, err
  2684  		}
  2685  		if data, ok := tmp.(string); ok {
  2686  			arg0 = data
  2687  		} else {
  2688  			return nil, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  2689  		}
  2690  	}
  2691  	args["arg"] = arg0
  2692  	return args, nil
  2693  }
  2694  
  2695  func (ec *executionContext) field_Subscription_directiveNullableArg_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2696  	var err error
  2697  	args := map[string]interface{}{}
  2698  	var arg0 *int
  2699  	if tmp, ok := rawArgs["arg"]; ok {
  2700  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
  2701  		directive1 := func(ctx context.Context) (interface{}, error) {
  2702  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
  2703  			if err != nil {
  2704  				return nil, err
  2705  			}
  2706  			if ec.directives.Range == nil {
  2707  				return nil, errors.New("directive range is not implemented")
  2708  			}
  2709  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
  2710  		}
  2711  
  2712  		tmp, err = directive1(ctx)
  2713  		if err != nil {
  2714  			return nil, err
  2715  		}
  2716  		if data, ok := tmp.(*int); ok {
  2717  			arg0 = data
  2718  		} else if tmp == nil {
  2719  			arg0 = nil
  2720  		} else {
  2721  			return nil, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp)
  2722  		}
  2723  	}
  2724  	args["arg"] = arg0
  2725  	var arg1 *int
  2726  	if tmp, ok := rawArgs["arg2"]; ok {
  2727  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOInt2ᚖint(ctx, tmp) }
  2728  		directive1 := func(ctx context.Context) (interface{}, error) {
  2729  			min, err := ec.unmarshalOInt2ᚖint(ctx, 0)
  2730  			if err != nil {
  2731  				return nil, err
  2732  			}
  2733  			if ec.directives.Range == nil {
  2734  				return nil, errors.New("directive range is not implemented")
  2735  			}
  2736  			return ec.directives.Range(ctx, rawArgs, directive0, min, nil)
  2737  		}
  2738  
  2739  		tmp, err = directive1(ctx)
  2740  		if err != nil {
  2741  			return nil, err
  2742  		}
  2743  		if data, ok := tmp.(*int); ok {
  2744  			arg1 = data
  2745  		} else if tmp == nil {
  2746  			arg1 = nil
  2747  		} else {
  2748  			return nil, fmt.Errorf(`unexpected type %T from directive, should be *int`, tmp)
  2749  		}
  2750  	}
  2751  	args["arg2"] = arg1
  2752  	var arg2 *string
  2753  	if tmp, ok := rawArgs["arg3"]; ok {
  2754  		directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOString2ᚖstring(ctx, tmp) }
  2755  		directive1 := func(ctx context.Context) (interface{}, error) {
  2756  			if ec.directives.ToNull == nil {
  2757  				return nil, errors.New("directive toNull is not implemented")
  2758  			}
  2759  			return ec.directives.ToNull(ctx, rawArgs, directive0)
  2760  		}
  2761  
  2762  		tmp, err = directive1(ctx)
  2763  		if err != nil {
  2764  			return nil, err
  2765  		}
  2766  		if data, ok := tmp.(*string); ok {
  2767  			arg2 = data
  2768  		} else if tmp == nil {
  2769  			arg2 = nil
  2770  		} else {
  2771  			return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  2772  		}
  2773  	}
  2774  	args["arg3"] = arg2
  2775  	return args, nil
  2776  }
  2777  
  2778  func (ec *executionContext) field_ValidType_validArgs_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2779  	var err error
  2780  	args := map[string]interface{}{}
  2781  	var arg0 string
  2782  	if tmp, ok := rawArgs["break"]; ok {
  2783  		arg0, err = ec.unmarshalNString2string(ctx, tmp)
  2784  		if err != nil {
  2785  			return nil, err
  2786  		}
  2787  	}
  2788  	args["break"] = arg0
  2789  	var arg1 string
  2790  	if tmp, ok := rawArgs["default"]; ok {
  2791  		arg1, err = ec.unmarshalNString2string(ctx, tmp)
  2792  		if err != nil {
  2793  			return nil, err
  2794  		}
  2795  	}
  2796  	args["default"] = arg1
  2797  	var arg2 string
  2798  	if tmp, ok := rawArgs["func"]; ok {
  2799  		arg2, err = ec.unmarshalNString2string(ctx, tmp)
  2800  		if err != nil {
  2801  			return nil, err
  2802  		}
  2803  	}
  2804  	args["func"] = arg2
  2805  	var arg3 string
  2806  	if tmp, ok := rawArgs["interface"]; ok {
  2807  		arg3, err = ec.unmarshalNString2string(ctx, tmp)
  2808  		if err != nil {
  2809  			return nil, err
  2810  		}
  2811  	}
  2812  	args["interface"] = arg3
  2813  	var arg4 string
  2814  	if tmp, ok := rawArgs["select"]; ok {
  2815  		arg4, err = ec.unmarshalNString2string(ctx, tmp)
  2816  		if err != nil {
  2817  			return nil, err
  2818  		}
  2819  	}
  2820  	args["select"] = arg4
  2821  	var arg5 string
  2822  	if tmp, ok := rawArgs["case"]; ok {
  2823  		arg5, err = ec.unmarshalNString2string(ctx, tmp)
  2824  		if err != nil {
  2825  			return nil, err
  2826  		}
  2827  	}
  2828  	args["case"] = arg5
  2829  	var arg6 string
  2830  	if tmp, ok := rawArgs["defer"]; ok {
  2831  		arg6, err = ec.unmarshalNString2string(ctx, tmp)
  2832  		if err != nil {
  2833  			return nil, err
  2834  		}
  2835  	}
  2836  	args["defer"] = arg6
  2837  	var arg7 string
  2838  	if tmp, ok := rawArgs["go"]; ok {
  2839  		arg7, err = ec.unmarshalNString2string(ctx, tmp)
  2840  		if err != nil {
  2841  			return nil, err
  2842  		}
  2843  	}
  2844  	args["go"] = arg7
  2845  	var arg8 string
  2846  	if tmp, ok := rawArgs["map"]; ok {
  2847  		arg8, err = ec.unmarshalNString2string(ctx, tmp)
  2848  		if err != nil {
  2849  			return nil, err
  2850  		}
  2851  	}
  2852  	args["map"] = arg8
  2853  	var arg9 string
  2854  	if tmp, ok := rawArgs["struct"]; ok {
  2855  		arg9, err = ec.unmarshalNString2string(ctx, tmp)
  2856  		if err != nil {
  2857  			return nil, err
  2858  		}
  2859  	}
  2860  	args["struct"] = arg9
  2861  	var arg10 string
  2862  	if tmp, ok := rawArgs["chan"]; ok {
  2863  		arg10, err = ec.unmarshalNString2string(ctx, tmp)
  2864  		if err != nil {
  2865  			return nil, err
  2866  		}
  2867  	}
  2868  	args["chan"] = arg10
  2869  	var arg11 string
  2870  	if tmp, ok := rawArgs["else"]; ok {
  2871  		arg11, err = ec.unmarshalNString2string(ctx, tmp)
  2872  		if err != nil {
  2873  			return nil, err
  2874  		}
  2875  	}
  2876  	args["else"] = arg11
  2877  	var arg12 string
  2878  	if tmp, ok := rawArgs["goto"]; ok {
  2879  		arg12, err = ec.unmarshalNString2string(ctx, tmp)
  2880  		if err != nil {
  2881  			return nil, err
  2882  		}
  2883  	}
  2884  	args["goto"] = arg12
  2885  	var arg13 string
  2886  	if tmp, ok := rawArgs["package"]; ok {
  2887  		arg13, err = ec.unmarshalNString2string(ctx, tmp)
  2888  		if err != nil {
  2889  			return nil, err
  2890  		}
  2891  	}
  2892  	args["package"] = arg13
  2893  	var arg14 string
  2894  	if tmp, ok := rawArgs["switch"]; ok {
  2895  		arg14, err = ec.unmarshalNString2string(ctx, tmp)
  2896  		if err != nil {
  2897  			return nil, err
  2898  		}
  2899  	}
  2900  	args["switch"] = arg14
  2901  	var arg15 string
  2902  	if tmp, ok := rawArgs["const"]; ok {
  2903  		arg15, err = ec.unmarshalNString2string(ctx, tmp)
  2904  		if err != nil {
  2905  			return nil, err
  2906  		}
  2907  	}
  2908  	args["const"] = arg15
  2909  	var arg16 string
  2910  	if tmp, ok := rawArgs["fallthrough"]; ok {
  2911  		arg16, err = ec.unmarshalNString2string(ctx, tmp)
  2912  		if err != nil {
  2913  			return nil, err
  2914  		}
  2915  	}
  2916  	args["fallthrough"] = arg16
  2917  	var arg17 string
  2918  	if tmp, ok := rawArgs["if"]; ok {
  2919  		arg17, err = ec.unmarshalNString2string(ctx, tmp)
  2920  		if err != nil {
  2921  			return nil, err
  2922  		}
  2923  	}
  2924  	args["if"] = arg17
  2925  	var arg18 string
  2926  	if tmp, ok := rawArgs["range"]; ok {
  2927  		arg18, err = ec.unmarshalNString2string(ctx, tmp)
  2928  		if err != nil {
  2929  			return nil, err
  2930  		}
  2931  	}
  2932  	args["range"] = arg18
  2933  	var arg19 string
  2934  	if tmp, ok := rawArgs["type"]; ok {
  2935  		arg19, err = ec.unmarshalNString2string(ctx, tmp)
  2936  		if err != nil {
  2937  			return nil, err
  2938  		}
  2939  	}
  2940  	args["type"] = arg19
  2941  	var arg20 string
  2942  	if tmp, ok := rawArgs["continue"]; ok {
  2943  		arg20, err = ec.unmarshalNString2string(ctx, tmp)
  2944  		if err != nil {
  2945  			return nil, err
  2946  		}
  2947  	}
  2948  	args["continue"] = arg20
  2949  	var arg21 string
  2950  	if tmp, ok := rawArgs["for"]; ok {
  2951  		arg21, err = ec.unmarshalNString2string(ctx, tmp)
  2952  		if err != nil {
  2953  			return nil, err
  2954  		}
  2955  	}
  2956  	args["for"] = arg21
  2957  	var arg22 string
  2958  	if tmp, ok := rawArgs["import"]; ok {
  2959  		arg22, err = ec.unmarshalNString2string(ctx, tmp)
  2960  		if err != nil {
  2961  			return nil, err
  2962  		}
  2963  	}
  2964  	args["import"] = arg22
  2965  	var arg23 string
  2966  	if tmp, ok := rawArgs["return"]; ok {
  2967  		arg23, err = ec.unmarshalNString2string(ctx, tmp)
  2968  		if err != nil {
  2969  			return nil, err
  2970  		}
  2971  	}
  2972  	args["return"] = arg23
  2973  	var arg24 string
  2974  	if tmp, ok := rawArgs["var"]; ok {
  2975  		arg24, err = ec.unmarshalNString2string(ctx, tmp)
  2976  		if err != nil {
  2977  			return nil, err
  2978  		}
  2979  	}
  2980  	args["var"] = arg24
  2981  	var arg25 string
  2982  	if tmp, ok := rawArgs["_"]; ok {
  2983  		arg25, err = ec.unmarshalNString2string(ctx, tmp)
  2984  		if err != nil {
  2985  			return nil, err
  2986  		}
  2987  	}
  2988  	args["_"] = arg25
  2989  	return args, nil
  2990  }
  2991  
  2992  func (ec *executionContext) field_ValidType_validInputKeywords_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  2993  	var err error
  2994  	args := map[string]interface{}{}
  2995  	var arg0 *ValidInput
  2996  	if tmp, ok := rawArgs["input"]; ok {
  2997  		arg0, err = ec.unmarshalOValidInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidInput(ctx, tmp)
  2998  		if err != nil {
  2999  			return nil, err
  3000  		}
  3001  	}
  3002  	args["input"] = arg0
  3003  	return args, nil
  3004  }
  3005  
  3006  func (ec *executionContext) field___Type_enumValues_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  3007  	var err error
  3008  	args := map[string]interface{}{}
  3009  	var arg0 bool
  3010  	if tmp, ok := rawArgs["includeDeprecated"]; ok {
  3011  		arg0, err = ec.unmarshalOBoolean2bool(ctx, tmp)
  3012  		if err != nil {
  3013  			return nil, err
  3014  		}
  3015  	}
  3016  	args["includeDeprecated"] = arg0
  3017  	return args, nil
  3018  }
  3019  
  3020  func (ec *executionContext) field___Type_fields_args(ctx context.Context, rawArgs map[string]interface{}) (map[string]interface{}, error) {
  3021  	var err error
  3022  	args := map[string]interface{}{}
  3023  	var arg0 bool
  3024  	if tmp, ok := rawArgs["includeDeprecated"]; ok {
  3025  		arg0, err = ec.unmarshalOBoolean2bool(ctx, tmp)
  3026  		if err != nil {
  3027  			return nil, err
  3028  		}
  3029  	}
  3030  	args["includeDeprecated"] = arg0
  3031  	return args, nil
  3032  }
  3033  
  3034  // endregion ***************************** args.gotpl *****************************
  3035  
  3036  // region    ************************** directives.gotpl **************************
  3037  
  3038  func (ec *executionContext) _fieldMiddleware(ctx context.Context, obj interface{}, next graphql.Resolver) interface{} {
  3039  	fc := graphql.GetFieldContext(ctx)
  3040  	for _, d := range fc.Field.Directives {
  3041  		switch d.Name {
  3042  		case "logged":
  3043  			rawArgs := d.ArgumentMap(ec.Variables)
  3044  			args, err := ec.dir_logged_args(ctx, rawArgs)
  3045  			if err != nil {
  3046  				ec.Error(ctx, err)
  3047  				return nil
  3048  			}
  3049  			n := next
  3050  			next = func(ctx context.Context) (interface{}, error) {
  3051  				if ec.directives.Logged == nil {
  3052  					return nil, errors.New("directive logged is not implemented")
  3053  				}
  3054  				return ec.directives.Logged(ctx, obj, n, args["id"].(string))
  3055  			}
  3056  		}
  3057  	}
  3058  	res, err := ec.ResolverMiddleware(ctx, next)
  3059  	if err != nil {
  3060  		ec.Error(ctx, err)
  3061  		return nil
  3062  	}
  3063  	return res
  3064  }
  3065  
  3066  // endregion ************************** directives.gotpl **************************
  3067  
  3068  // region    **************************** field.gotpl *****************************
  3069  
  3070  func (ec *executionContext) _A_id(ctx context.Context, field graphql.CollectedField, obj *A) (ret graphql.Marshaler) {
  3071  	defer func() {
  3072  		if r := recover(); r != nil {
  3073  			ec.Error(ctx, ec.Recover(ctx, r))
  3074  			ret = graphql.Null
  3075  		}
  3076  	}()
  3077  	fc := &graphql.FieldContext{
  3078  		Object:   "A",
  3079  		Field:    field,
  3080  		Args:     nil,
  3081  		IsMethod: false,
  3082  	}
  3083  
  3084  	ctx = graphql.WithFieldContext(ctx, fc)
  3085  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3086  		ctx = rctx // use context from middleware stack in children
  3087  		return obj.ID, nil
  3088  	})
  3089  
  3090  	if resTmp == nil {
  3091  		if !graphql.HasFieldError(ctx, fc) {
  3092  			ec.Errorf(ctx, "must not be null")
  3093  		}
  3094  		return graphql.Null
  3095  	}
  3096  	res := resTmp.(string)
  3097  	fc.Result = res
  3098  	return ec.marshalNID2string(ctx, field.Selections, res)
  3099  }
  3100  
  3101  func (ec *executionContext) _AIt_id(ctx context.Context, field graphql.CollectedField, obj *AIt) (ret graphql.Marshaler) {
  3102  	defer func() {
  3103  		if r := recover(); r != nil {
  3104  			ec.Error(ctx, ec.Recover(ctx, r))
  3105  			ret = graphql.Null
  3106  		}
  3107  	}()
  3108  	fc := &graphql.FieldContext{
  3109  		Object:   "AIt",
  3110  		Field:    field,
  3111  		Args:     nil,
  3112  		IsMethod: false,
  3113  	}
  3114  
  3115  	ctx = graphql.WithFieldContext(ctx, fc)
  3116  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3117  		ctx = rctx // use context from middleware stack in children
  3118  		return obj.ID, nil
  3119  	})
  3120  
  3121  	if resTmp == nil {
  3122  		if !graphql.HasFieldError(ctx, fc) {
  3123  			ec.Errorf(ctx, "must not be null")
  3124  		}
  3125  		return graphql.Null
  3126  	}
  3127  	res := resTmp.(string)
  3128  	fc.Result = res
  3129  	return ec.marshalNID2string(ctx, field.Selections, res)
  3130  }
  3131  
  3132  func (ec *executionContext) _AbIt_id(ctx context.Context, field graphql.CollectedField, obj *AbIt) (ret graphql.Marshaler) {
  3133  	defer func() {
  3134  		if r := recover(); r != nil {
  3135  			ec.Error(ctx, ec.Recover(ctx, r))
  3136  			ret = graphql.Null
  3137  		}
  3138  	}()
  3139  	fc := &graphql.FieldContext{
  3140  		Object:   "AbIt",
  3141  		Field:    field,
  3142  		Args:     nil,
  3143  		IsMethod: false,
  3144  	}
  3145  
  3146  	ctx = graphql.WithFieldContext(ctx, fc)
  3147  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3148  		ctx = rctx // use context from middleware stack in children
  3149  		return obj.ID, nil
  3150  	})
  3151  
  3152  	if resTmp == nil {
  3153  		if !graphql.HasFieldError(ctx, fc) {
  3154  			ec.Errorf(ctx, "must not be null")
  3155  		}
  3156  		return graphql.Null
  3157  	}
  3158  	res := resTmp.(string)
  3159  	fc.Result = res
  3160  	return ec.marshalNID2string(ctx, field.Selections, res)
  3161  }
  3162  
  3163  func (ec *executionContext) _Autobind_int(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
  3164  	defer func() {
  3165  		if r := recover(); r != nil {
  3166  			ec.Error(ctx, ec.Recover(ctx, r))
  3167  			ret = graphql.Null
  3168  		}
  3169  	}()
  3170  	fc := &graphql.FieldContext{
  3171  		Object:   "Autobind",
  3172  		Field:    field,
  3173  		Args:     nil,
  3174  		IsMethod: false,
  3175  	}
  3176  
  3177  	ctx = graphql.WithFieldContext(ctx, fc)
  3178  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3179  		ctx = rctx // use context from middleware stack in children
  3180  		return obj.Int, nil
  3181  	})
  3182  
  3183  	if resTmp == nil {
  3184  		if !graphql.HasFieldError(ctx, fc) {
  3185  			ec.Errorf(ctx, "must not be null")
  3186  		}
  3187  		return graphql.Null
  3188  	}
  3189  	res := resTmp.(int)
  3190  	fc.Result = res
  3191  	return ec.marshalNInt2int(ctx, field.Selections, res)
  3192  }
  3193  
  3194  func (ec *executionContext) _Autobind_int32(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
  3195  	defer func() {
  3196  		if r := recover(); r != nil {
  3197  			ec.Error(ctx, ec.Recover(ctx, r))
  3198  			ret = graphql.Null
  3199  		}
  3200  	}()
  3201  	fc := &graphql.FieldContext{
  3202  		Object:   "Autobind",
  3203  		Field:    field,
  3204  		Args:     nil,
  3205  		IsMethod: false,
  3206  	}
  3207  
  3208  	ctx = graphql.WithFieldContext(ctx, fc)
  3209  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3210  		ctx = rctx // use context from middleware stack in children
  3211  		return obj.Int32, nil
  3212  	})
  3213  
  3214  	if resTmp == nil {
  3215  		if !graphql.HasFieldError(ctx, fc) {
  3216  			ec.Errorf(ctx, "must not be null")
  3217  		}
  3218  		return graphql.Null
  3219  	}
  3220  	res := resTmp.(int32)
  3221  	fc.Result = res
  3222  	return ec.marshalNInt2int32(ctx, field.Selections, res)
  3223  }
  3224  
  3225  func (ec *executionContext) _Autobind_int64(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
  3226  	defer func() {
  3227  		if r := recover(); r != nil {
  3228  			ec.Error(ctx, ec.Recover(ctx, r))
  3229  			ret = graphql.Null
  3230  		}
  3231  	}()
  3232  	fc := &graphql.FieldContext{
  3233  		Object:   "Autobind",
  3234  		Field:    field,
  3235  		Args:     nil,
  3236  		IsMethod: false,
  3237  	}
  3238  
  3239  	ctx = graphql.WithFieldContext(ctx, fc)
  3240  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3241  		ctx = rctx // use context from middleware stack in children
  3242  		return obj.Int64, nil
  3243  	})
  3244  
  3245  	if resTmp == nil {
  3246  		if !graphql.HasFieldError(ctx, fc) {
  3247  			ec.Errorf(ctx, "must not be null")
  3248  		}
  3249  		return graphql.Null
  3250  	}
  3251  	res := resTmp.(int64)
  3252  	fc.Result = res
  3253  	return ec.marshalNInt2int64(ctx, field.Selections, res)
  3254  }
  3255  
  3256  func (ec *executionContext) _Autobind_idStr(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
  3257  	defer func() {
  3258  		if r := recover(); r != nil {
  3259  			ec.Error(ctx, ec.Recover(ctx, r))
  3260  			ret = graphql.Null
  3261  		}
  3262  	}()
  3263  	fc := &graphql.FieldContext{
  3264  		Object:   "Autobind",
  3265  		Field:    field,
  3266  		Args:     nil,
  3267  		IsMethod: false,
  3268  	}
  3269  
  3270  	ctx = graphql.WithFieldContext(ctx, fc)
  3271  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3272  		ctx = rctx // use context from middleware stack in children
  3273  		return obj.IdStr, nil
  3274  	})
  3275  
  3276  	if resTmp == nil {
  3277  		if !graphql.HasFieldError(ctx, fc) {
  3278  			ec.Errorf(ctx, "must not be null")
  3279  		}
  3280  		return graphql.Null
  3281  	}
  3282  	res := resTmp.(string)
  3283  	fc.Result = res
  3284  	return ec.marshalNID2string(ctx, field.Selections, res)
  3285  }
  3286  
  3287  func (ec *executionContext) _Autobind_idInt(ctx context.Context, field graphql.CollectedField, obj *Autobind) (ret graphql.Marshaler) {
  3288  	defer func() {
  3289  		if r := recover(); r != nil {
  3290  			ec.Error(ctx, ec.Recover(ctx, r))
  3291  			ret = graphql.Null
  3292  		}
  3293  	}()
  3294  	fc := &graphql.FieldContext{
  3295  		Object:   "Autobind",
  3296  		Field:    field,
  3297  		Args:     nil,
  3298  		IsMethod: false,
  3299  	}
  3300  
  3301  	ctx = graphql.WithFieldContext(ctx, fc)
  3302  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3303  		ctx = rctx // use context from middleware stack in children
  3304  		return obj.IdInt, nil
  3305  	})
  3306  
  3307  	if resTmp == nil {
  3308  		if !graphql.HasFieldError(ctx, fc) {
  3309  			ec.Errorf(ctx, "must not be null")
  3310  		}
  3311  		return graphql.Null
  3312  	}
  3313  	res := resTmp.(int)
  3314  	fc.Result = res
  3315  	return ec.marshalNID2int(ctx, field.Selections, res)
  3316  }
  3317  
  3318  func (ec *executionContext) _B_id(ctx context.Context, field graphql.CollectedField, obj *B) (ret graphql.Marshaler) {
  3319  	defer func() {
  3320  		if r := recover(); r != nil {
  3321  			ec.Error(ctx, ec.Recover(ctx, r))
  3322  			ret = graphql.Null
  3323  		}
  3324  	}()
  3325  	fc := &graphql.FieldContext{
  3326  		Object:   "B",
  3327  		Field:    field,
  3328  		Args:     nil,
  3329  		IsMethod: false,
  3330  	}
  3331  
  3332  	ctx = graphql.WithFieldContext(ctx, fc)
  3333  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3334  		ctx = rctx // use context from middleware stack in children
  3335  		return obj.ID, nil
  3336  	})
  3337  
  3338  	if resTmp == nil {
  3339  		if !graphql.HasFieldError(ctx, fc) {
  3340  			ec.Errorf(ctx, "must not be null")
  3341  		}
  3342  		return graphql.Null
  3343  	}
  3344  	res := resTmp.(string)
  3345  	fc.Result = res
  3346  	return ec.marshalNID2string(ctx, field.Selections, res)
  3347  }
  3348  
  3349  func (ec *executionContext) _BackedByInterface_id(ctx context.Context, field graphql.CollectedField, obj BackedByInterface) (ret graphql.Marshaler) {
  3350  	defer func() {
  3351  		if r := recover(); r != nil {
  3352  			ec.Error(ctx, ec.Recover(ctx, r))
  3353  			ret = graphql.Null
  3354  		}
  3355  	}()
  3356  	fc := &graphql.FieldContext{
  3357  		Object:   "BackedByInterface",
  3358  		Field:    field,
  3359  		Args:     nil,
  3360  		IsMethod: true,
  3361  	}
  3362  
  3363  	ctx = graphql.WithFieldContext(ctx, fc)
  3364  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3365  		ctx = rctx // use context from middleware stack in children
  3366  		return ec.resolvers.BackedByInterface().ID(rctx, obj)
  3367  	})
  3368  
  3369  	if resTmp == nil {
  3370  		if !graphql.HasFieldError(ctx, fc) {
  3371  			ec.Errorf(ctx, "must not be null")
  3372  		}
  3373  		return graphql.Null
  3374  	}
  3375  	res := resTmp.(string)
  3376  	fc.Result = res
  3377  	return ec.marshalNString2string(ctx, field.Selections, res)
  3378  }
  3379  
  3380  func (ec *executionContext) _BackedByInterface_thisShouldBind(ctx context.Context, field graphql.CollectedField, obj BackedByInterface) (ret graphql.Marshaler) {
  3381  	defer func() {
  3382  		if r := recover(); r != nil {
  3383  			ec.Error(ctx, ec.Recover(ctx, r))
  3384  			ret = graphql.Null
  3385  		}
  3386  	}()
  3387  	fc := &graphql.FieldContext{
  3388  		Object:   "BackedByInterface",
  3389  		Field:    field,
  3390  		Args:     nil,
  3391  		IsMethod: true,
  3392  	}
  3393  
  3394  	ctx = graphql.WithFieldContext(ctx, fc)
  3395  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3396  		ctx = rctx // use context from middleware stack in children
  3397  		return obj.ThisShouldBind(), nil
  3398  	})
  3399  
  3400  	if resTmp == nil {
  3401  		if !graphql.HasFieldError(ctx, fc) {
  3402  			ec.Errorf(ctx, "must not be null")
  3403  		}
  3404  		return graphql.Null
  3405  	}
  3406  	res := resTmp.(string)
  3407  	fc.Result = res
  3408  	return ec.marshalNString2string(ctx, field.Selections, res)
  3409  }
  3410  
  3411  func (ec *executionContext) _BackedByInterface_thisShouldBindWithError(ctx context.Context, field graphql.CollectedField, obj BackedByInterface) (ret graphql.Marshaler) {
  3412  	defer func() {
  3413  		if r := recover(); r != nil {
  3414  			ec.Error(ctx, ec.Recover(ctx, r))
  3415  			ret = graphql.Null
  3416  		}
  3417  	}()
  3418  	fc := &graphql.FieldContext{
  3419  		Object:   "BackedByInterface",
  3420  		Field:    field,
  3421  		Args:     nil,
  3422  		IsMethod: true,
  3423  	}
  3424  
  3425  	ctx = graphql.WithFieldContext(ctx, fc)
  3426  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3427  		ctx = rctx // use context from middleware stack in children
  3428  		return obj.ThisShouldBindWithError()
  3429  	})
  3430  
  3431  	if resTmp == nil {
  3432  		if !graphql.HasFieldError(ctx, fc) {
  3433  			ec.Errorf(ctx, "must not be null")
  3434  		}
  3435  		return graphql.Null
  3436  	}
  3437  	res := resTmp.(string)
  3438  	fc.Result = res
  3439  	return ec.marshalNString2string(ctx, field.Selections, res)
  3440  }
  3441  
  3442  func (ec *executionContext) _Cat_species(ctx context.Context, field graphql.CollectedField, obj *Cat) (ret graphql.Marshaler) {
  3443  	defer func() {
  3444  		if r := recover(); r != nil {
  3445  			ec.Error(ctx, ec.Recover(ctx, r))
  3446  			ret = graphql.Null
  3447  		}
  3448  	}()
  3449  	fc := &graphql.FieldContext{
  3450  		Object:   "Cat",
  3451  		Field:    field,
  3452  		Args:     nil,
  3453  		IsMethod: false,
  3454  	}
  3455  
  3456  	ctx = graphql.WithFieldContext(ctx, fc)
  3457  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3458  		ctx = rctx // use context from middleware stack in children
  3459  		return obj.Species, nil
  3460  	})
  3461  
  3462  	if resTmp == nil {
  3463  		if !graphql.HasFieldError(ctx, fc) {
  3464  			ec.Errorf(ctx, "must not be null")
  3465  		}
  3466  		return graphql.Null
  3467  	}
  3468  	res := resTmp.(string)
  3469  	fc.Result = res
  3470  	return ec.marshalNString2string(ctx, field.Selections, res)
  3471  }
  3472  
  3473  func (ec *executionContext) _Cat_catBreed(ctx context.Context, field graphql.CollectedField, obj *Cat) (ret graphql.Marshaler) {
  3474  	defer func() {
  3475  		if r := recover(); r != nil {
  3476  			ec.Error(ctx, ec.Recover(ctx, r))
  3477  			ret = graphql.Null
  3478  		}
  3479  	}()
  3480  	fc := &graphql.FieldContext{
  3481  		Object:   "Cat",
  3482  		Field:    field,
  3483  		Args:     nil,
  3484  		IsMethod: false,
  3485  	}
  3486  
  3487  	ctx = graphql.WithFieldContext(ctx, fc)
  3488  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3489  		ctx = rctx // use context from middleware stack in children
  3490  		return obj.CatBreed, nil
  3491  	})
  3492  
  3493  	if resTmp == nil {
  3494  		if !graphql.HasFieldError(ctx, fc) {
  3495  			ec.Errorf(ctx, "must not be null")
  3496  		}
  3497  		return graphql.Null
  3498  	}
  3499  	res := resTmp.(string)
  3500  	fc.Result = res
  3501  	return ec.marshalNString2string(ctx, field.Selections, res)
  3502  }
  3503  
  3504  func (ec *executionContext) _CheckIssue896_id(ctx context.Context, field graphql.CollectedField, obj *CheckIssue896) (ret graphql.Marshaler) {
  3505  	defer func() {
  3506  		if r := recover(); r != nil {
  3507  			ec.Error(ctx, ec.Recover(ctx, r))
  3508  			ret = graphql.Null
  3509  		}
  3510  	}()
  3511  	fc := &graphql.FieldContext{
  3512  		Object:   "CheckIssue896",
  3513  		Field:    field,
  3514  		Args:     nil,
  3515  		IsMethod: false,
  3516  	}
  3517  
  3518  	ctx = graphql.WithFieldContext(ctx, fc)
  3519  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3520  		ctx = rctx // use context from middleware stack in children
  3521  		return obj.ID, nil
  3522  	})
  3523  
  3524  	if resTmp == nil {
  3525  		return graphql.Null
  3526  	}
  3527  	res := resTmp.(*int)
  3528  	fc.Result = res
  3529  	return ec.marshalOInt2ᚖint(ctx, field.Selections, res)
  3530  }
  3531  
  3532  func (ec *executionContext) _Circle_radius(ctx context.Context, field graphql.CollectedField, obj *Circle) (ret graphql.Marshaler) {
  3533  	defer func() {
  3534  		if r := recover(); r != nil {
  3535  			ec.Error(ctx, ec.Recover(ctx, r))
  3536  			ret = graphql.Null
  3537  		}
  3538  	}()
  3539  	fc := &graphql.FieldContext{
  3540  		Object:   "Circle",
  3541  		Field:    field,
  3542  		Args:     nil,
  3543  		IsMethod: false,
  3544  	}
  3545  
  3546  	ctx = graphql.WithFieldContext(ctx, fc)
  3547  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3548  		ctx = rctx // use context from middleware stack in children
  3549  		return obj.Radius, nil
  3550  	})
  3551  
  3552  	if resTmp == nil {
  3553  		return graphql.Null
  3554  	}
  3555  	res := resTmp.(float64)
  3556  	fc.Result = res
  3557  	return ec.marshalOFloat2float64(ctx, field.Selections, res)
  3558  }
  3559  
  3560  func (ec *executionContext) _Circle_area(ctx context.Context, field graphql.CollectedField, obj *Circle) (ret graphql.Marshaler) {
  3561  	defer func() {
  3562  		if r := recover(); r != nil {
  3563  			ec.Error(ctx, ec.Recover(ctx, r))
  3564  			ret = graphql.Null
  3565  		}
  3566  	}()
  3567  	fc := &graphql.FieldContext{
  3568  		Object:   "Circle",
  3569  		Field:    field,
  3570  		Args:     nil,
  3571  		IsMethod: true,
  3572  	}
  3573  
  3574  	ctx = graphql.WithFieldContext(ctx, fc)
  3575  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3576  		ctx = rctx // use context from middleware stack in children
  3577  		return obj.Area(), nil
  3578  	})
  3579  
  3580  	if resTmp == nil {
  3581  		return graphql.Null
  3582  	}
  3583  	res := resTmp.(float64)
  3584  	fc.Result = res
  3585  	return ec.marshalOFloat2float64(ctx, field.Selections, res)
  3586  }
  3587  
  3588  func (ec *executionContext) _ConcreteNodeA_id(ctx context.Context, field graphql.CollectedField, obj *ConcreteNodeA) (ret graphql.Marshaler) {
  3589  	defer func() {
  3590  		if r := recover(); r != nil {
  3591  			ec.Error(ctx, ec.Recover(ctx, r))
  3592  			ret = graphql.Null
  3593  		}
  3594  	}()
  3595  	fc := &graphql.FieldContext{
  3596  		Object:   "ConcreteNodeA",
  3597  		Field:    field,
  3598  		Args:     nil,
  3599  		IsMethod: false,
  3600  	}
  3601  
  3602  	ctx = graphql.WithFieldContext(ctx, fc)
  3603  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3604  		ctx = rctx // use context from middleware stack in children
  3605  		return obj.ID, nil
  3606  	})
  3607  
  3608  	if resTmp == nil {
  3609  		if !graphql.HasFieldError(ctx, fc) {
  3610  			ec.Errorf(ctx, "must not be null")
  3611  		}
  3612  		return graphql.Null
  3613  	}
  3614  	res := resTmp.(string)
  3615  	fc.Result = res
  3616  	return ec.marshalNID2string(ctx, field.Selections, res)
  3617  }
  3618  
  3619  func (ec *executionContext) _ConcreteNodeA_child(ctx context.Context, field graphql.CollectedField, obj *ConcreteNodeA) (ret graphql.Marshaler) {
  3620  	defer func() {
  3621  		if r := recover(); r != nil {
  3622  			ec.Error(ctx, ec.Recover(ctx, r))
  3623  			ret = graphql.Null
  3624  		}
  3625  	}()
  3626  	fc := &graphql.FieldContext{
  3627  		Object:   "ConcreteNodeA",
  3628  		Field:    field,
  3629  		Args:     nil,
  3630  		IsMethod: true,
  3631  	}
  3632  
  3633  	ctx = graphql.WithFieldContext(ctx, fc)
  3634  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3635  		ctx = rctx // use context from middleware stack in children
  3636  		return obj.Child()
  3637  	})
  3638  
  3639  	if resTmp == nil {
  3640  		if !graphql.HasFieldError(ctx, fc) {
  3641  			ec.Errorf(ctx, "must not be null")
  3642  		}
  3643  		return graphql.Null
  3644  	}
  3645  	res := resTmp.(Node)
  3646  	fc.Result = res
  3647  	return ec.marshalNNode2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNode(ctx, field.Selections, res)
  3648  }
  3649  
  3650  func (ec *executionContext) _ConcreteNodeA_name(ctx context.Context, field graphql.CollectedField, obj *ConcreteNodeA) (ret graphql.Marshaler) {
  3651  	defer func() {
  3652  		if r := recover(); r != nil {
  3653  			ec.Error(ctx, ec.Recover(ctx, r))
  3654  			ret = graphql.Null
  3655  		}
  3656  	}()
  3657  	fc := &graphql.FieldContext{
  3658  		Object:   "ConcreteNodeA",
  3659  		Field:    field,
  3660  		Args:     nil,
  3661  		IsMethod: false,
  3662  	}
  3663  
  3664  	ctx = graphql.WithFieldContext(ctx, fc)
  3665  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3666  		ctx = rctx // use context from middleware stack in children
  3667  		return obj.Name, nil
  3668  	})
  3669  
  3670  	if resTmp == nil {
  3671  		if !graphql.HasFieldError(ctx, fc) {
  3672  			ec.Errorf(ctx, "must not be null")
  3673  		}
  3674  		return graphql.Null
  3675  	}
  3676  	res := resTmp.(string)
  3677  	fc.Result = res
  3678  	return ec.marshalNString2string(ctx, field.Selections, res)
  3679  }
  3680  
  3681  func (ec *executionContext) _ConcreteNodeInterface_id(ctx context.Context, field graphql.CollectedField, obj ConcreteNodeInterface) (ret graphql.Marshaler) {
  3682  	defer func() {
  3683  		if r := recover(); r != nil {
  3684  			ec.Error(ctx, ec.Recover(ctx, r))
  3685  			ret = graphql.Null
  3686  		}
  3687  	}()
  3688  	fc := &graphql.FieldContext{
  3689  		Object:   "ConcreteNodeInterface",
  3690  		Field:    field,
  3691  		Args:     nil,
  3692  		IsMethod: true,
  3693  	}
  3694  
  3695  	ctx = graphql.WithFieldContext(ctx, fc)
  3696  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3697  		ctx = rctx // use context from middleware stack in children
  3698  		return obj.ID(), nil
  3699  	})
  3700  
  3701  	if resTmp == nil {
  3702  		if !graphql.HasFieldError(ctx, fc) {
  3703  			ec.Errorf(ctx, "must not be null")
  3704  		}
  3705  		return graphql.Null
  3706  	}
  3707  	res := resTmp.(string)
  3708  	fc.Result = res
  3709  	return ec.marshalNID2string(ctx, field.Selections, res)
  3710  }
  3711  
  3712  func (ec *executionContext) _ConcreteNodeInterface_child(ctx context.Context, field graphql.CollectedField, obj ConcreteNodeInterface) (ret graphql.Marshaler) {
  3713  	defer func() {
  3714  		if r := recover(); r != nil {
  3715  			ec.Error(ctx, ec.Recover(ctx, r))
  3716  			ret = graphql.Null
  3717  		}
  3718  	}()
  3719  	fc := &graphql.FieldContext{
  3720  		Object:   "ConcreteNodeInterface",
  3721  		Field:    field,
  3722  		Args:     nil,
  3723  		IsMethod: true,
  3724  	}
  3725  
  3726  	ctx = graphql.WithFieldContext(ctx, fc)
  3727  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3728  		ctx = rctx // use context from middleware stack in children
  3729  		return obj.Child()
  3730  	})
  3731  
  3732  	if resTmp == nil {
  3733  		if !graphql.HasFieldError(ctx, fc) {
  3734  			ec.Errorf(ctx, "must not be null")
  3735  		}
  3736  		return graphql.Null
  3737  	}
  3738  	res := resTmp.(Node)
  3739  	fc.Result = res
  3740  	return ec.marshalNNode2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNode(ctx, field.Selections, res)
  3741  }
  3742  
  3743  func (ec *executionContext) _Content_Post_foo(ctx context.Context, field graphql.CollectedField, obj *ContentPost) (ret graphql.Marshaler) {
  3744  	defer func() {
  3745  		if r := recover(); r != nil {
  3746  			ec.Error(ctx, ec.Recover(ctx, r))
  3747  			ret = graphql.Null
  3748  		}
  3749  	}()
  3750  	fc := &graphql.FieldContext{
  3751  		Object:   "Content_Post",
  3752  		Field:    field,
  3753  		Args:     nil,
  3754  		IsMethod: false,
  3755  	}
  3756  
  3757  	ctx = graphql.WithFieldContext(ctx, fc)
  3758  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3759  		ctx = rctx // use context from middleware stack in children
  3760  		return obj.Foo, nil
  3761  	})
  3762  
  3763  	if resTmp == nil {
  3764  		return graphql.Null
  3765  	}
  3766  	res := resTmp.(*string)
  3767  	fc.Result = res
  3768  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  3769  }
  3770  
  3771  func (ec *executionContext) _Content_User_foo(ctx context.Context, field graphql.CollectedField, obj *ContentUser) (ret graphql.Marshaler) {
  3772  	defer func() {
  3773  		if r := recover(); r != nil {
  3774  			ec.Error(ctx, ec.Recover(ctx, r))
  3775  			ret = graphql.Null
  3776  		}
  3777  	}()
  3778  	fc := &graphql.FieldContext{
  3779  		Object:   "Content_User",
  3780  		Field:    field,
  3781  		Args:     nil,
  3782  		IsMethod: false,
  3783  	}
  3784  
  3785  	ctx = graphql.WithFieldContext(ctx, fc)
  3786  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3787  		ctx = rctx // use context from middleware stack in children
  3788  		return obj.Foo, nil
  3789  	})
  3790  
  3791  	if resTmp == nil {
  3792  		return graphql.Null
  3793  	}
  3794  	res := resTmp.(*string)
  3795  	fc.Result = res
  3796  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  3797  }
  3798  
  3799  func (ec *executionContext) _Dog_species(ctx context.Context, field graphql.CollectedField, obj *Dog) (ret graphql.Marshaler) {
  3800  	defer func() {
  3801  		if r := recover(); r != nil {
  3802  			ec.Error(ctx, ec.Recover(ctx, r))
  3803  			ret = graphql.Null
  3804  		}
  3805  	}()
  3806  	fc := &graphql.FieldContext{
  3807  		Object:   "Dog",
  3808  		Field:    field,
  3809  		Args:     nil,
  3810  		IsMethod: false,
  3811  	}
  3812  
  3813  	ctx = graphql.WithFieldContext(ctx, fc)
  3814  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3815  		ctx = rctx // use context from middleware stack in children
  3816  		return obj.Species, nil
  3817  	})
  3818  
  3819  	if resTmp == nil {
  3820  		if !graphql.HasFieldError(ctx, fc) {
  3821  			ec.Errorf(ctx, "must not be null")
  3822  		}
  3823  		return graphql.Null
  3824  	}
  3825  	res := resTmp.(string)
  3826  	fc.Result = res
  3827  	return ec.marshalNString2string(ctx, field.Selections, res)
  3828  }
  3829  
  3830  func (ec *executionContext) _Dog_dogBreed(ctx context.Context, field graphql.CollectedField, obj *Dog) (ret graphql.Marshaler) {
  3831  	defer func() {
  3832  		if r := recover(); r != nil {
  3833  			ec.Error(ctx, ec.Recover(ctx, r))
  3834  			ret = graphql.Null
  3835  		}
  3836  	}()
  3837  	fc := &graphql.FieldContext{
  3838  		Object:   "Dog",
  3839  		Field:    field,
  3840  		Args:     nil,
  3841  		IsMethod: false,
  3842  	}
  3843  
  3844  	ctx = graphql.WithFieldContext(ctx, fc)
  3845  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3846  		ctx = rctx // use context from middleware stack in children
  3847  		return obj.DogBreed, nil
  3848  	})
  3849  
  3850  	if resTmp == nil {
  3851  		if !graphql.HasFieldError(ctx, fc) {
  3852  			ec.Errorf(ctx, "must not be null")
  3853  		}
  3854  		return graphql.Null
  3855  	}
  3856  	res := resTmp.(string)
  3857  	fc.Result = res
  3858  	return ec.marshalNString2string(ctx, field.Selections, res)
  3859  }
  3860  
  3861  func (ec *executionContext) _EmbeddedCase1_exportedEmbeddedPointerExportedMethod(ctx context.Context, field graphql.CollectedField, obj *EmbeddedCase1) (ret graphql.Marshaler) {
  3862  	defer func() {
  3863  		if r := recover(); r != nil {
  3864  			ec.Error(ctx, ec.Recover(ctx, r))
  3865  			ret = graphql.Null
  3866  		}
  3867  	}()
  3868  	fc := &graphql.FieldContext{
  3869  		Object:   "EmbeddedCase1",
  3870  		Field:    field,
  3871  		Args:     nil,
  3872  		IsMethod: true,
  3873  	}
  3874  
  3875  	ctx = graphql.WithFieldContext(ctx, fc)
  3876  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3877  		ctx = rctx // use context from middleware stack in children
  3878  		return obj.ExportedEmbeddedPointerExportedMethod(), nil
  3879  	})
  3880  
  3881  	if resTmp == nil {
  3882  		if !graphql.HasFieldError(ctx, fc) {
  3883  			ec.Errorf(ctx, "must not be null")
  3884  		}
  3885  		return graphql.Null
  3886  	}
  3887  	res := resTmp.(string)
  3888  	fc.Result = res
  3889  	return ec.marshalNString2string(ctx, field.Selections, res)
  3890  }
  3891  
  3892  func (ec *executionContext) _EmbeddedCase2_unexportedEmbeddedPointerExportedMethod(ctx context.Context, field graphql.CollectedField, obj *EmbeddedCase2) (ret graphql.Marshaler) {
  3893  	defer func() {
  3894  		if r := recover(); r != nil {
  3895  			ec.Error(ctx, ec.Recover(ctx, r))
  3896  			ret = graphql.Null
  3897  		}
  3898  	}()
  3899  	fc := &graphql.FieldContext{
  3900  		Object:   "EmbeddedCase2",
  3901  		Field:    field,
  3902  		Args:     nil,
  3903  		IsMethod: true,
  3904  	}
  3905  
  3906  	ctx = graphql.WithFieldContext(ctx, fc)
  3907  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3908  		ctx = rctx // use context from middleware stack in children
  3909  		return obj.UnexportedEmbeddedPointerExportedMethod(), nil
  3910  	})
  3911  
  3912  	if resTmp == nil {
  3913  		if !graphql.HasFieldError(ctx, fc) {
  3914  			ec.Errorf(ctx, "must not be null")
  3915  		}
  3916  		return graphql.Null
  3917  	}
  3918  	res := resTmp.(string)
  3919  	fc.Result = res
  3920  	return ec.marshalNString2string(ctx, field.Selections, res)
  3921  }
  3922  
  3923  func (ec *executionContext) _EmbeddedCase3_unexportedEmbeddedInterfaceExportedMethod(ctx context.Context, field graphql.CollectedField, obj *EmbeddedCase3) (ret graphql.Marshaler) {
  3924  	defer func() {
  3925  		if r := recover(); r != nil {
  3926  			ec.Error(ctx, ec.Recover(ctx, r))
  3927  			ret = graphql.Null
  3928  		}
  3929  	}()
  3930  	fc := &graphql.FieldContext{
  3931  		Object:   "EmbeddedCase3",
  3932  		Field:    field,
  3933  		Args:     nil,
  3934  		IsMethod: true,
  3935  	}
  3936  
  3937  	ctx = graphql.WithFieldContext(ctx, fc)
  3938  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3939  		ctx = rctx // use context from middleware stack in children
  3940  		return obj.UnexportedEmbeddedInterfaceExportedMethod(), nil
  3941  	})
  3942  
  3943  	if resTmp == nil {
  3944  		if !graphql.HasFieldError(ctx, fc) {
  3945  			ec.Errorf(ctx, "must not be null")
  3946  		}
  3947  		return graphql.Null
  3948  	}
  3949  	res := resTmp.(string)
  3950  	fc.Result = res
  3951  	return ec.marshalNString2string(ctx, field.Selections, res)
  3952  }
  3953  
  3954  func (ec *executionContext) _EmbeddedDefaultScalar_value(ctx context.Context, field graphql.CollectedField, obj *EmbeddedDefaultScalar) (ret graphql.Marshaler) {
  3955  	defer func() {
  3956  		if r := recover(); r != nil {
  3957  			ec.Error(ctx, ec.Recover(ctx, r))
  3958  			ret = graphql.Null
  3959  		}
  3960  	}()
  3961  	fc := &graphql.FieldContext{
  3962  		Object:   "EmbeddedDefaultScalar",
  3963  		Field:    field,
  3964  		Args:     nil,
  3965  		IsMethod: false,
  3966  	}
  3967  
  3968  	ctx = graphql.WithFieldContext(ctx, fc)
  3969  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3970  		ctx = rctx // use context from middleware stack in children
  3971  		return obj.Value, nil
  3972  	})
  3973  
  3974  	if resTmp == nil {
  3975  		return graphql.Null
  3976  	}
  3977  	res := resTmp.(*string)
  3978  	fc.Result = res
  3979  	return ec.marshalODefaultScalarImplementation2ᚖstring(ctx, field.Selections, res)
  3980  }
  3981  
  3982  func (ec *executionContext) _EmbeddedPointer_ID(ctx context.Context, field graphql.CollectedField, obj *EmbeddedPointerModel) (ret graphql.Marshaler) {
  3983  	defer func() {
  3984  		if r := recover(); r != nil {
  3985  			ec.Error(ctx, ec.Recover(ctx, r))
  3986  			ret = graphql.Null
  3987  		}
  3988  	}()
  3989  	fc := &graphql.FieldContext{
  3990  		Object:   "EmbeddedPointer",
  3991  		Field:    field,
  3992  		Args:     nil,
  3993  		IsMethod: false,
  3994  	}
  3995  
  3996  	ctx = graphql.WithFieldContext(ctx, fc)
  3997  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  3998  		ctx = rctx // use context from middleware stack in children
  3999  		return obj.ID, nil
  4000  	})
  4001  
  4002  	if resTmp == nil {
  4003  		return graphql.Null
  4004  	}
  4005  	res := resTmp.(string)
  4006  	fc.Result = res
  4007  	return ec.marshalOString2string(ctx, field.Selections, res)
  4008  }
  4009  
  4010  func (ec *executionContext) _EmbeddedPointer_Title(ctx context.Context, field graphql.CollectedField, obj *EmbeddedPointerModel) (ret graphql.Marshaler) {
  4011  	defer func() {
  4012  		if r := recover(); r != nil {
  4013  			ec.Error(ctx, ec.Recover(ctx, r))
  4014  			ret = graphql.Null
  4015  		}
  4016  	}()
  4017  	fc := &graphql.FieldContext{
  4018  		Object:   "EmbeddedPointer",
  4019  		Field:    field,
  4020  		Args:     nil,
  4021  		IsMethod: false,
  4022  	}
  4023  
  4024  	ctx = graphql.WithFieldContext(ctx, fc)
  4025  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4026  		ctx = rctx // use context from middleware stack in children
  4027  		return obj.Title, nil
  4028  	})
  4029  
  4030  	if resTmp == nil {
  4031  		return graphql.Null
  4032  	}
  4033  	res := resTmp.(string)
  4034  	fc.Result = res
  4035  	return ec.marshalOString2string(ctx, field.Selections, res)
  4036  }
  4037  
  4038  func (ec *executionContext) _Error_id(ctx context.Context, field graphql.CollectedField, obj *Error) (ret graphql.Marshaler) {
  4039  	defer func() {
  4040  		if r := recover(); r != nil {
  4041  			ec.Error(ctx, ec.Recover(ctx, r))
  4042  			ret = graphql.Null
  4043  		}
  4044  	}()
  4045  	fc := &graphql.FieldContext{
  4046  		Object:   "Error",
  4047  		Field:    field,
  4048  		Args:     nil,
  4049  		IsMethod: false,
  4050  	}
  4051  
  4052  	ctx = graphql.WithFieldContext(ctx, fc)
  4053  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4054  		ctx = rctx // use context from middleware stack in children
  4055  		return obj.ID, nil
  4056  	})
  4057  
  4058  	if resTmp == nil {
  4059  		if !graphql.HasFieldError(ctx, fc) {
  4060  			ec.Errorf(ctx, "must not be null")
  4061  		}
  4062  		return graphql.Null
  4063  	}
  4064  	res := resTmp.(string)
  4065  	fc.Result = res
  4066  	return ec.marshalNID2string(ctx, field.Selections, res)
  4067  }
  4068  
  4069  func (ec *executionContext) _Error_errorOnNonRequiredField(ctx context.Context, field graphql.CollectedField, obj *Error) (ret graphql.Marshaler) {
  4070  	defer func() {
  4071  		if r := recover(); r != nil {
  4072  			ec.Error(ctx, ec.Recover(ctx, r))
  4073  			ret = graphql.Null
  4074  		}
  4075  	}()
  4076  	fc := &graphql.FieldContext{
  4077  		Object:   "Error",
  4078  		Field:    field,
  4079  		Args:     nil,
  4080  		IsMethod: true,
  4081  	}
  4082  
  4083  	ctx = graphql.WithFieldContext(ctx, fc)
  4084  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4085  		ctx = rctx // use context from middleware stack in children
  4086  		return obj.ErrorOnNonRequiredField()
  4087  	})
  4088  
  4089  	if resTmp == nil {
  4090  		return graphql.Null
  4091  	}
  4092  	res := resTmp.(string)
  4093  	fc.Result = res
  4094  	return ec.marshalOString2string(ctx, field.Selections, res)
  4095  }
  4096  
  4097  func (ec *executionContext) _Error_errorOnRequiredField(ctx context.Context, field graphql.CollectedField, obj *Error) (ret graphql.Marshaler) {
  4098  	defer func() {
  4099  		if r := recover(); r != nil {
  4100  			ec.Error(ctx, ec.Recover(ctx, r))
  4101  			ret = graphql.Null
  4102  		}
  4103  	}()
  4104  	fc := &graphql.FieldContext{
  4105  		Object:   "Error",
  4106  		Field:    field,
  4107  		Args:     nil,
  4108  		IsMethod: true,
  4109  	}
  4110  
  4111  	ctx = graphql.WithFieldContext(ctx, fc)
  4112  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4113  		ctx = rctx // use context from middleware stack in children
  4114  		return obj.ErrorOnRequiredField()
  4115  	})
  4116  
  4117  	if resTmp == nil {
  4118  		if !graphql.HasFieldError(ctx, fc) {
  4119  			ec.Errorf(ctx, "must not be null")
  4120  		}
  4121  		return graphql.Null
  4122  	}
  4123  	res := resTmp.(string)
  4124  	fc.Result = res
  4125  	return ec.marshalNString2string(ctx, field.Selections, res)
  4126  }
  4127  
  4128  func (ec *executionContext) _Error_nilOnRequiredField(ctx context.Context, field graphql.CollectedField, obj *Error) (ret graphql.Marshaler) {
  4129  	defer func() {
  4130  		if r := recover(); r != nil {
  4131  			ec.Error(ctx, ec.Recover(ctx, r))
  4132  			ret = graphql.Null
  4133  		}
  4134  	}()
  4135  	fc := &graphql.FieldContext{
  4136  		Object:   "Error",
  4137  		Field:    field,
  4138  		Args:     nil,
  4139  		IsMethod: true,
  4140  	}
  4141  
  4142  	ctx = graphql.WithFieldContext(ctx, fc)
  4143  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4144  		ctx = rctx // use context from middleware stack in children
  4145  		return obj.NilOnRequiredField(), nil
  4146  	})
  4147  
  4148  	if resTmp == nil {
  4149  		if !graphql.HasFieldError(ctx, fc) {
  4150  			ec.Errorf(ctx, "must not be null")
  4151  		}
  4152  		return graphql.Null
  4153  	}
  4154  	res := resTmp.(*string)
  4155  	fc.Result = res
  4156  	return ec.marshalNString2ᚖstring(ctx, field.Selections, res)
  4157  }
  4158  
  4159  func (ec *executionContext) _Errors_a(ctx context.Context, field graphql.CollectedField, obj *Errors) (ret graphql.Marshaler) {
  4160  	defer func() {
  4161  		if r := recover(); r != nil {
  4162  			ec.Error(ctx, ec.Recover(ctx, r))
  4163  			ret = graphql.Null
  4164  		}
  4165  	}()
  4166  	fc := &graphql.FieldContext{
  4167  		Object:   "Errors",
  4168  		Field:    field,
  4169  		Args:     nil,
  4170  		IsMethod: true,
  4171  	}
  4172  
  4173  	ctx = graphql.WithFieldContext(ctx, fc)
  4174  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4175  		ctx = rctx // use context from middleware stack in children
  4176  		return ec.resolvers.Errors().A(rctx, obj)
  4177  	})
  4178  
  4179  	if resTmp == nil {
  4180  		if !graphql.HasFieldError(ctx, fc) {
  4181  			ec.Errorf(ctx, "must not be null")
  4182  		}
  4183  		return graphql.Null
  4184  	}
  4185  	res := resTmp.(*Error)
  4186  	fc.Result = res
  4187  	return ec.marshalNError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx, field.Selections, res)
  4188  }
  4189  
  4190  func (ec *executionContext) _Errors_b(ctx context.Context, field graphql.CollectedField, obj *Errors) (ret graphql.Marshaler) {
  4191  	defer func() {
  4192  		if r := recover(); r != nil {
  4193  			ec.Error(ctx, ec.Recover(ctx, r))
  4194  			ret = graphql.Null
  4195  		}
  4196  	}()
  4197  	fc := &graphql.FieldContext{
  4198  		Object:   "Errors",
  4199  		Field:    field,
  4200  		Args:     nil,
  4201  		IsMethod: true,
  4202  	}
  4203  
  4204  	ctx = graphql.WithFieldContext(ctx, fc)
  4205  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4206  		ctx = rctx // use context from middleware stack in children
  4207  		return ec.resolvers.Errors().B(rctx, obj)
  4208  	})
  4209  
  4210  	if resTmp == nil {
  4211  		if !graphql.HasFieldError(ctx, fc) {
  4212  			ec.Errorf(ctx, "must not be null")
  4213  		}
  4214  		return graphql.Null
  4215  	}
  4216  	res := resTmp.(*Error)
  4217  	fc.Result = res
  4218  	return ec.marshalNError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx, field.Selections, res)
  4219  }
  4220  
  4221  func (ec *executionContext) _Errors_c(ctx context.Context, field graphql.CollectedField, obj *Errors) (ret graphql.Marshaler) {
  4222  	defer func() {
  4223  		if r := recover(); r != nil {
  4224  			ec.Error(ctx, ec.Recover(ctx, r))
  4225  			ret = graphql.Null
  4226  		}
  4227  	}()
  4228  	fc := &graphql.FieldContext{
  4229  		Object:   "Errors",
  4230  		Field:    field,
  4231  		Args:     nil,
  4232  		IsMethod: true,
  4233  	}
  4234  
  4235  	ctx = graphql.WithFieldContext(ctx, fc)
  4236  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4237  		ctx = rctx // use context from middleware stack in children
  4238  		return ec.resolvers.Errors().C(rctx, obj)
  4239  	})
  4240  
  4241  	if resTmp == nil {
  4242  		if !graphql.HasFieldError(ctx, fc) {
  4243  			ec.Errorf(ctx, "must not be null")
  4244  		}
  4245  		return graphql.Null
  4246  	}
  4247  	res := resTmp.(*Error)
  4248  	fc.Result = res
  4249  	return ec.marshalNError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx, field.Selections, res)
  4250  }
  4251  
  4252  func (ec *executionContext) _Errors_d(ctx context.Context, field graphql.CollectedField, obj *Errors) (ret graphql.Marshaler) {
  4253  	defer func() {
  4254  		if r := recover(); r != nil {
  4255  			ec.Error(ctx, ec.Recover(ctx, r))
  4256  			ret = graphql.Null
  4257  		}
  4258  	}()
  4259  	fc := &graphql.FieldContext{
  4260  		Object:   "Errors",
  4261  		Field:    field,
  4262  		Args:     nil,
  4263  		IsMethod: true,
  4264  	}
  4265  
  4266  	ctx = graphql.WithFieldContext(ctx, fc)
  4267  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4268  		ctx = rctx // use context from middleware stack in children
  4269  		return ec.resolvers.Errors().D(rctx, obj)
  4270  	})
  4271  
  4272  	if resTmp == nil {
  4273  		if !graphql.HasFieldError(ctx, fc) {
  4274  			ec.Errorf(ctx, "must not be null")
  4275  		}
  4276  		return graphql.Null
  4277  	}
  4278  	res := resTmp.(*Error)
  4279  	fc.Result = res
  4280  	return ec.marshalNError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx, field.Selections, res)
  4281  }
  4282  
  4283  func (ec *executionContext) _Errors_e(ctx context.Context, field graphql.CollectedField, obj *Errors) (ret graphql.Marshaler) {
  4284  	defer func() {
  4285  		if r := recover(); r != nil {
  4286  			ec.Error(ctx, ec.Recover(ctx, r))
  4287  			ret = graphql.Null
  4288  		}
  4289  	}()
  4290  	fc := &graphql.FieldContext{
  4291  		Object:   "Errors",
  4292  		Field:    field,
  4293  		Args:     nil,
  4294  		IsMethod: true,
  4295  	}
  4296  
  4297  	ctx = graphql.WithFieldContext(ctx, fc)
  4298  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4299  		ctx = rctx // use context from middleware stack in children
  4300  		return ec.resolvers.Errors().E(rctx, obj)
  4301  	})
  4302  
  4303  	if resTmp == nil {
  4304  		if !graphql.HasFieldError(ctx, fc) {
  4305  			ec.Errorf(ctx, "must not be null")
  4306  		}
  4307  		return graphql.Null
  4308  	}
  4309  	res := resTmp.(*Error)
  4310  	fc.Result = res
  4311  	return ec.marshalNError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx, field.Selections, res)
  4312  }
  4313  
  4314  func (ec *executionContext) _ForcedResolver_field(ctx context.Context, field graphql.CollectedField, obj *ForcedResolver) (ret graphql.Marshaler) {
  4315  	defer func() {
  4316  		if r := recover(); r != nil {
  4317  			ec.Error(ctx, ec.Recover(ctx, r))
  4318  			ret = graphql.Null
  4319  		}
  4320  	}()
  4321  	fc := &graphql.FieldContext{
  4322  		Object:   "ForcedResolver",
  4323  		Field:    field,
  4324  		Args:     nil,
  4325  		IsMethod: true,
  4326  	}
  4327  
  4328  	ctx = graphql.WithFieldContext(ctx, fc)
  4329  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4330  		ctx = rctx // use context from middleware stack in children
  4331  		return ec.resolvers.ForcedResolver().Field(rctx, obj)
  4332  	})
  4333  
  4334  	if resTmp == nil {
  4335  		return graphql.Null
  4336  	}
  4337  	res := resTmp.(*Circle)
  4338  	fc.Result = res
  4339  	return ec.marshalOCircle2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCircle(ctx, field.Selections, res)
  4340  }
  4341  
  4342  func (ec *executionContext) _InnerObject_id(ctx context.Context, field graphql.CollectedField, obj *InnerObject) (ret graphql.Marshaler) {
  4343  	defer func() {
  4344  		if r := recover(); r != nil {
  4345  			ec.Error(ctx, ec.Recover(ctx, r))
  4346  			ret = graphql.Null
  4347  		}
  4348  	}()
  4349  	fc := &graphql.FieldContext{
  4350  		Object:   "InnerObject",
  4351  		Field:    field,
  4352  		Args:     nil,
  4353  		IsMethod: false,
  4354  	}
  4355  
  4356  	ctx = graphql.WithFieldContext(ctx, fc)
  4357  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4358  		ctx = rctx // use context from middleware stack in children
  4359  		return obj.ID, nil
  4360  	})
  4361  
  4362  	if resTmp == nil {
  4363  		if !graphql.HasFieldError(ctx, fc) {
  4364  			ec.Errorf(ctx, "must not be null")
  4365  		}
  4366  		return graphql.Null
  4367  	}
  4368  	res := resTmp.(int)
  4369  	fc.Result = res
  4370  	return ec.marshalNInt2int(ctx, field.Selections, res)
  4371  }
  4372  
  4373  func (ec *executionContext) _InvalidIdentifier_id(ctx context.Context, field graphql.CollectedField, obj *invalid_packagename.InvalidIdentifier) (ret graphql.Marshaler) {
  4374  	defer func() {
  4375  		if r := recover(); r != nil {
  4376  			ec.Error(ctx, ec.Recover(ctx, r))
  4377  			ret = graphql.Null
  4378  		}
  4379  	}()
  4380  	fc := &graphql.FieldContext{
  4381  		Object:   "InvalidIdentifier",
  4382  		Field:    field,
  4383  		Args:     nil,
  4384  		IsMethod: false,
  4385  	}
  4386  
  4387  	ctx = graphql.WithFieldContext(ctx, fc)
  4388  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4389  		ctx = rctx // use context from middleware stack in children
  4390  		return obj.ID, nil
  4391  	})
  4392  
  4393  	if resTmp == nil {
  4394  		if !graphql.HasFieldError(ctx, fc) {
  4395  			ec.Errorf(ctx, "must not be null")
  4396  		}
  4397  		return graphql.Null
  4398  	}
  4399  	res := resTmp.(int)
  4400  	fc.Result = res
  4401  	return ec.marshalNInt2int(ctx, field.Selections, res)
  4402  }
  4403  
  4404  func (ec *executionContext) _It_id(ctx context.Context, field graphql.CollectedField, obj *introspection1.It) (ret graphql.Marshaler) {
  4405  	defer func() {
  4406  		if r := recover(); r != nil {
  4407  			ec.Error(ctx, ec.Recover(ctx, r))
  4408  			ret = graphql.Null
  4409  		}
  4410  	}()
  4411  	fc := &graphql.FieldContext{
  4412  		Object:   "It",
  4413  		Field:    field,
  4414  		Args:     nil,
  4415  		IsMethod: false,
  4416  	}
  4417  
  4418  	ctx = graphql.WithFieldContext(ctx, fc)
  4419  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4420  		ctx = rctx // use context from middleware stack in children
  4421  		return obj.ID, nil
  4422  	})
  4423  
  4424  	if resTmp == nil {
  4425  		if !graphql.HasFieldError(ctx, fc) {
  4426  			ec.Errorf(ctx, "must not be null")
  4427  		}
  4428  		return graphql.Null
  4429  	}
  4430  	res := resTmp.(string)
  4431  	fc.Result = res
  4432  	return ec.marshalNID2string(ctx, field.Selections, res)
  4433  }
  4434  
  4435  func (ec *executionContext) _LoopA_b(ctx context.Context, field graphql.CollectedField, obj *LoopA) (ret graphql.Marshaler) {
  4436  	defer func() {
  4437  		if r := recover(); r != nil {
  4438  			ec.Error(ctx, ec.Recover(ctx, r))
  4439  			ret = graphql.Null
  4440  		}
  4441  	}()
  4442  	fc := &graphql.FieldContext{
  4443  		Object:   "LoopA",
  4444  		Field:    field,
  4445  		Args:     nil,
  4446  		IsMethod: false,
  4447  	}
  4448  
  4449  	ctx = graphql.WithFieldContext(ctx, fc)
  4450  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4451  		ctx = rctx // use context from middleware stack in children
  4452  		return obj.B, nil
  4453  	})
  4454  
  4455  	if resTmp == nil {
  4456  		if !graphql.HasFieldError(ctx, fc) {
  4457  			ec.Errorf(ctx, "must not be null")
  4458  		}
  4459  		return graphql.Null
  4460  	}
  4461  	res := resTmp.(*LoopB)
  4462  	fc.Result = res
  4463  	return ec.marshalNLoopB2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐLoopB(ctx, field.Selections, res)
  4464  }
  4465  
  4466  func (ec *executionContext) _LoopB_a(ctx context.Context, field graphql.CollectedField, obj *LoopB) (ret graphql.Marshaler) {
  4467  	defer func() {
  4468  		if r := recover(); r != nil {
  4469  			ec.Error(ctx, ec.Recover(ctx, r))
  4470  			ret = graphql.Null
  4471  		}
  4472  	}()
  4473  	fc := &graphql.FieldContext{
  4474  		Object:   "LoopB",
  4475  		Field:    field,
  4476  		Args:     nil,
  4477  		IsMethod: false,
  4478  	}
  4479  
  4480  	ctx = graphql.WithFieldContext(ctx, fc)
  4481  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4482  		ctx = rctx // use context from middleware stack in children
  4483  		return obj.A, nil
  4484  	})
  4485  
  4486  	if resTmp == nil {
  4487  		if !graphql.HasFieldError(ctx, fc) {
  4488  			ec.Errorf(ctx, "must not be null")
  4489  		}
  4490  		return graphql.Null
  4491  	}
  4492  	res := resTmp.(*LoopA)
  4493  	fc.Result = res
  4494  	return ec.marshalNLoopA2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐLoopA(ctx, field.Selections, res)
  4495  }
  4496  
  4497  func (ec *executionContext) _Map_id(ctx context.Context, field graphql.CollectedField, obj *Map) (ret graphql.Marshaler) {
  4498  	defer func() {
  4499  		if r := recover(); r != nil {
  4500  			ec.Error(ctx, ec.Recover(ctx, r))
  4501  			ret = graphql.Null
  4502  		}
  4503  	}()
  4504  	fc := &graphql.FieldContext{
  4505  		Object:   "Map",
  4506  		Field:    field,
  4507  		Args:     nil,
  4508  		IsMethod: false,
  4509  	}
  4510  
  4511  	ctx = graphql.WithFieldContext(ctx, fc)
  4512  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4513  		ctx = rctx // use context from middleware stack in children
  4514  		return obj.ID, nil
  4515  	})
  4516  
  4517  	if resTmp == nil {
  4518  		if !graphql.HasFieldError(ctx, fc) {
  4519  			ec.Errorf(ctx, "must not be null")
  4520  		}
  4521  		return graphql.Null
  4522  	}
  4523  	res := resTmp.(string)
  4524  	fc.Result = res
  4525  	return ec.marshalNID2string(ctx, field.Selections, res)
  4526  }
  4527  
  4528  func (ec *executionContext) _MapStringInterfaceType_a(ctx context.Context, field graphql.CollectedField, obj map[string]interface{}) (ret graphql.Marshaler) {
  4529  	defer func() {
  4530  		if r := recover(); r != nil {
  4531  			ec.Error(ctx, ec.Recover(ctx, r))
  4532  			ret = graphql.Null
  4533  		}
  4534  	}()
  4535  	fc := &graphql.FieldContext{
  4536  		Object:   "MapStringInterfaceType",
  4537  		Field:    field,
  4538  		Args:     nil,
  4539  		IsMethod: false,
  4540  	}
  4541  
  4542  	ctx = graphql.WithFieldContext(ctx, fc)
  4543  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4544  		ctx = rctx // use context from middleware stack in children
  4545  		switch v := obj["a"].(type) {
  4546  		case *string:
  4547  			return v, nil
  4548  		case string:
  4549  			return &v, nil
  4550  		case nil:
  4551  			return (*string)(nil), nil
  4552  		default:
  4553  			return nil, fmt.Errorf("unexpected type %T for field %s", v, "a")
  4554  		}
  4555  	})
  4556  
  4557  	if resTmp == nil {
  4558  		return graphql.Null
  4559  	}
  4560  	res := resTmp.(*string)
  4561  	fc.Result = res
  4562  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  4563  }
  4564  
  4565  func (ec *executionContext) _MapStringInterfaceType_b(ctx context.Context, field graphql.CollectedField, obj map[string]interface{}) (ret graphql.Marshaler) {
  4566  	defer func() {
  4567  		if r := recover(); r != nil {
  4568  			ec.Error(ctx, ec.Recover(ctx, r))
  4569  			ret = graphql.Null
  4570  		}
  4571  	}()
  4572  	fc := &graphql.FieldContext{
  4573  		Object:   "MapStringInterfaceType",
  4574  		Field:    field,
  4575  		Args:     nil,
  4576  		IsMethod: false,
  4577  	}
  4578  
  4579  	ctx = graphql.WithFieldContext(ctx, fc)
  4580  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4581  		ctx = rctx // use context from middleware stack in children
  4582  		switch v := obj["b"].(type) {
  4583  		case *int:
  4584  			return v, nil
  4585  		case int:
  4586  			return &v, nil
  4587  		case nil:
  4588  			return (*int)(nil), nil
  4589  		default:
  4590  			return nil, fmt.Errorf("unexpected type %T for field %s", v, "b")
  4591  		}
  4592  	})
  4593  
  4594  	if resTmp == nil {
  4595  		return graphql.Null
  4596  	}
  4597  	res := resTmp.(*int)
  4598  	fc.Result = res
  4599  	return ec.marshalOInt2ᚖint(ctx, field.Selections, res)
  4600  }
  4601  
  4602  func (ec *executionContext) _ModelMethods_resolverField(ctx context.Context, field graphql.CollectedField, obj *ModelMethods) (ret graphql.Marshaler) {
  4603  	defer func() {
  4604  		if r := recover(); r != nil {
  4605  			ec.Error(ctx, ec.Recover(ctx, r))
  4606  			ret = graphql.Null
  4607  		}
  4608  	}()
  4609  	fc := &graphql.FieldContext{
  4610  		Object:   "ModelMethods",
  4611  		Field:    field,
  4612  		Args:     nil,
  4613  		IsMethod: true,
  4614  	}
  4615  
  4616  	ctx = graphql.WithFieldContext(ctx, fc)
  4617  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4618  		ctx = rctx // use context from middleware stack in children
  4619  		return ec.resolvers.ModelMethods().ResolverField(rctx, obj)
  4620  	})
  4621  
  4622  	if resTmp == nil {
  4623  		if !graphql.HasFieldError(ctx, fc) {
  4624  			ec.Errorf(ctx, "must not be null")
  4625  		}
  4626  		return graphql.Null
  4627  	}
  4628  	res := resTmp.(bool)
  4629  	fc.Result = res
  4630  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  4631  }
  4632  
  4633  func (ec *executionContext) _ModelMethods_noContext(ctx context.Context, field graphql.CollectedField, obj *ModelMethods) (ret graphql.Marshaler) {
  4634  	defer func() {
  4635  		if r := recover(); r != nil {
  4636  			ec.Error(ctx, ec.Recover(ctx, r))
  4637  			ret = graphql.Null
  4638  		}
  4639  	}()
  4640  	fc := &graphql.FieldContext{
  4641  		Object:   "ModelMethods",
  4642  		Field:    field,
  4643  		Args:     nil,
  4644  		IsMethod: true,
  4645  	}
  4646  
  4647  	ctx = graphql.WithFieldContext(ctx, fc)
  4648  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4649  		ctx = rctx // use context from middleware stack in children
  4650  		return obj.NoContext(), nil
  4651  	})
  4652  
  4653  	if resTmp == nil {
  4654  		if !graphql.HasFieldError(ctx, fc) {
  4655  			ec.Errorf(ctx, "must not be null")
  4656  		}
  4657  		return graphql.Null
  4658  	}
  4659  	res := resTmp.(bool)
  4660  	fc.Result = res
  4661  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  4662  }
  4663  
  4664  func (ec *executionContext) _ModelMethods_withContext(ctx context.Context, field graphql.CollectedField, obj *ModelMethods) (ret graphql.Marshaler) {
  4665  	defer func() {
  4666  		if r := recover(); r != nil {
  4667  			ec.Error(ctx, ec.Recover(ctx, r))
  4668  			ret = graphql.Null
  4669  		}
  4670  	}()
  4671  	fc := &graphql.FieldContext{
  4672  		Object:   "ModelMethods",
  4673  		Field:    field,
  4674  		Args:     nil,
  4675  		IsMethod: true,
  4676  	}
  4677  
  4678  	ctx = graphql.WithFieldContext(ctx, fc)
  4679  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4680  		ctx = rctx // use context from middleware stack in children
  4681  		return obj.WithContext(ctx), nil
  4682  	})
  4683  
  4684  	if resTmp == nil {
  4685  		if !graphql.HasFieldError(ctx, fc) {
  4686  			ec.Errorf(ctx, "must not be null")
  4687  		}
  4688  		return graphql.Null
  4689  	}
  4690  	res := resTmp.(bool)
  4691  	fc.Result = res
  4692  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  4693  }
  4694  
  4695  func (ec *executionContext) _ObjectDirectives_text(ctx context.Context, field graphql.CollectedField, obj *ObjectDirectives) (ret graphql.Marshaler) {
  4696  	defer func() {
  4697  		if r := recover(); r != nil {
  4698  			ec.Error(ctx, ec.Recover(ctx, r))
  4699  			ret = graphql.Null
  4700  		}
  4701  	}()
  4702  	fc := &graphql.FieldContext{
  4703  		Object:   "ObjectDirectives",
  4704  		Field:    field,
  4705  		Args:     nil,
  4706  		IsMethod: false,
  4707  	}
  4708  
  4709  	ctx = graphql.WithFieldContext(ctx, fc)
  4710  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4711  		directive0 := func(rctx context.Context) (interface{}, error) {
  4712  			ctx = rctx // use context from middleware stack in children
  4713  			return obj.Text, nil
  4714  		}
  4715  		directive1 := func(ctx context.Context) (interface{}, error) {
  4716  			min, err := ec.unmarshalNInt2int(ctx, 0)
  4717  			if err != nil {
  4718  				return nil, err
  4719  			}
  4720  			max, err := ec.unmarshalOInt2ᚖint(ctx, 7)
  4721  			if err != nil {
  4722  				return nil, err
  4723  			}
  4724  			message, err := ec.unmarshalOString2ᚖstring(ctx, "not valid")
  4725  			if err != nil {
  4726  				return nil, err
  4727  			}
  4728  			if ec.directives.Length == nil {
  4729  				return nil, errors.New("directive length is not implemented")
  4730  			}
  4731  			return ec.directives.Length(ctx, obj, directive0, min, max, message)
  4732  		}
  4733  
  4734  		tmp, err := directive1(rctx)
  4735  		if err != nil {
  4736  			return nil, err
  4737  		}
  4738  		if tmp == nil {
  4739  			return nil, nil
  4740  		}
  4741  		if data, ok := tmp.(string); ok {
  4742  			return data, nil
  4743  		}
  4744  		return nil, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  4745  	})
  4746  
  4747  	if resTmp == nil {
  4748  		if !graphql.HasFieldError(ctx, fc) {
  4749  			ec.Errorf(ctx, "must not be null")
  4750  		}
  4751  		return graphql.Null
  4752  	}
  4753  	res := resTmp.(string)
  4754  	fc.Result = res
  4755  	return ec.marshalNString2string(ctx, field.Selections, res)
  4756  }
  4757  
  4758  func (ec *executionContext) _ObjectDirectives_nullableText(ctx context.Context, field graphql.CollectedField, obj *ObjectDirectives) (ret graphql.Marshaler) {
  4759  	defer func() {
  4760  		if r := recover(); r != nil {
  4761  			ec.Error(ctx, ec.Recover(ctx, r))
  4762  			ret = graphql.Null
  4763  		}
  4764  	}()
  4765  	fc := &graphql.FieldContext{
  4766  		Object:   "ObjectDirectives",
  4767  		Field:    field,
  4768  		Args:     nil,
  4769  		IsMethod: false,
  4770  	}
  4771  
  4772  	ctx = graphql.WithFieldContext(ctx, fc)
  4773  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4774  		directive0 := func(rctx context.Context) (interface{}, error) {
  4775  			ctx = rctx // use context from middleware stack in children
  4776  			return obj.NullableText, nil
  4777  		}
  4778  		directive1 := func(ctx context.Context) (interface{}, error) {
  4779  			if ec.directives.ToNull == nil {
  4780  				return nil, errors.New("directive toNull is not implemented")
  4781  			}
  4782  			return ec.directives.ToNull(ctx, obj, directive0)
  4783  		}
  4784  
  4785  		tmp, err := directive1(rctx)
  4786  		if err != nil {
  4787  			return nil, err
  4788  		}
  4789  		if tmp == nil {
  4790  			return nil, nil
  4791  		}
  4792  		if data, ok := tmp.(*string); ok {
  4793  			return data, nil
  4794  		}
  4795  		return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  4796  	})
  4797  
  4798  	if resTmp == nil {
  4799  		return graphql.Null
  4800  	}
  4801  	res := resTmp.(*string)
  4802  	fc.Result = res
  4803  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  4804  }
  4805  
  4806  func (ec *executionContext) _ObjectDirectivesWithCustomGoModel_nullableText(ctx context.Context, field graphql.CollectedField, obj *ObjectDirectivesWithCustomGoModel) (ret graphql.Marshaler) {
  4807  	defer func() {
  4808  		if r := recover(); r != nil {
  4809  			ec.Error(ctx, ec.Recover(ctx, r))
  4810  			ret = graphql.Null
  4811  		}
  4812  	}()
  4813  	fc := &graphql.FieldContext{
  4814  		Object:   "ObjectDirectivesWithCustomGoModel",
  4815  		Field:    field,
  4816  		Args:     nil,
  4817  		IsMethod: false,
  4818  	}
  4819  
  4820  	ctx = graphql.WithFieldContext(ctx, fc)
  4821  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4822  		directive0 := func(rctx context.Context) (interface{}, error) {
  4823  			ctx = rctx // use context from middleware stack in children
  4824  			return obj.NullableText, nil
  4825  		}
  4826  		directive1 := func(ctx context.Context) (interface{}, error) {
  4827  			if ec.directives.ToNull == nil {
  4828  				return nil, errors.New("directive toNull is not implemented")
  4829  			}
  4830  			return ec.directives.ToNull(ctx, obj, directive0)
  4831  		}
  4832  
  4833  		tmp, err := directive1(rctx)
  4834  		if err != nil {
  4835  			return nil, err
  4836  		}
  4837  		if tmp == nil {
  4838  			return nil, nil
  4839  		}
  4840  		if data, ok := tmp.(string); ok {
  4841  			return data, nil
  4842  		}
  4843  		return nil, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  4844  	})
  4845  
  4846  	if resTmp == nil {
  4847  		return graphql.Null
  4848  	}
  4849  	res := resTmp.(string)
  4850  	fc.Result = res
  4851  	return ec.marshalOString2string(ctx, field.Selections, res)
  4852  }
  4853  
  4854  func (ec *executionContext) _OuterObject_inner(ctx context.Context, field graphql.CollectedField, obj *OuterObject) (ret graphql.Marshaler) {
  4855  	defer func() {
  4856  		if r := recover(); r != nil {
  4857  			ec.Error(ctx, ec.Recover(ctx, r))
  4858  			ret = graphql.Null
  4859  		}
  4860  	}()
  4861  	fc := &graphql.FieldContext{
  4862  		Object:   "OuterObject",
  4863  		Field:    field,
  4864  		Args:     nil,
  4865  		IsMethod: false,
  4866  	}
  4867  
  4868  	ctx = graphql.WithFieldContext(ctx, fc)
  4869  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4870  		ctx = rctx // use context from middleware stack in children
  4871  		return obj.Inner, nil
  4872  	})
  4873  
  4874  	if resTmp == nil {
  4875  		if !graphql.HasFieldError(ctx, fc) {
  4876  			ec.Errorf(ctx, "must not be null")
  4877  		}
  4878  		return graphql.Null
  4879  	}
  4880  	res := resTmp.(*InnerObject)
  4881  	fc.Result = res
  4882  	return ec.marshalNInnerObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerObject(ctx, field.Selections, res)
  4883  }
  4884  
  4885  func (ec *executionContext) _OverlappingFields_oneFoo(ctx context.Context, field graphql.CollectedField, obj *OverlappingFields) (ret graphql.Marshaler) {
  4886  	defer func() {
  4887  		if r := recover(); r != nil {
  4888  			ec.Error(ctx, ec.Recover(ctx, r))
  4889  			ret = graphql.Null
  4890  		}
  4891  	}()
  4892  	fc := &graphql.FieldContext{
  4893  		Object:   "OverlappingFields",
  4894  		Field:    field,
  4895  		Args:     nil,
  4896  		IsMethod: false,
  4897  	}
  4898  
  4899  	ctx = graphql.WithFieldContext(ctx, fc)
  4900  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4901  		ctx = rctx // use context from middleware stack in children
  4902  		return obj.Foo, nil
  4903  	})
  4904  
  4905  	if resTmp == nil {
  4906  		if !graphql.HasFieldError(ctx, fc) {
  4907  			ec.Errorf(ctx, "must not be null")
  4908  		}
  4909  		return graphql.Null
  4910  	}
  4911  	res := resTmp.(int)
  4912  	fc.Result = res
  4913  	return ec.marshalNInt2int(ctx, field.Selections, res)
  4914  }
  4915  
  4916  func (ec *executionContext) _OverlappingFields_twoFoo(ctx context.Context, field graphql.CollectedField, obj *OverlappingFields) (ret graphql.Marshaler) {
  4917  	defer func() {
  4918  		if r := recover(); r != nil {
  4919  			ec.Error(ctx, ec.Recover(ctx, r))
  4920  			ret = graphql.Null
  4921  		}
  4922  	}()
  4923  	fc := &graphql.FieldContext{
  4924  		Object:   "OverlappingFields",
  4925  		Field:    field,
  4926  		Args:     nil,
  4927  		IsMethod: false,
  4928  	}
  4929  
  4930  	ctx = graphql.WithFieldContext(ctx, fc)
  4931  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4932  		ctx = rctx // use context from middleware stack in children
  4933  		return obj.Foo, nil
  4934  	})
  4935  
  4936  	if resTmp == nil {
  4937  		if !graphql.HasFieldError(ctx, fc) {
  4938  			ec.Errorf(ctx, "must not be null")
  4939  		}
  4940  		return graphql.Null
  4941  	}
  4942  	res := resTmp.(int)
  4943  	fc.Result = res
  4944  	return ec.marshalNInt2int(ctx, field.Selections, res)
  4945  }
  4946  
  4947  func (ec *executionContext) _OverlappingFields_oldFoo(ctx context.Context, field graphql.CollectedField, obj *OverlappingFields) (ret graphql.Marshaler) {
  4948  	defer func() {
  4949  		if r := recover(); r != nil {
  4950  			ec.Error(ctx, ec.Recover(ctx, r))
  4951  			ret = graphql.Null
  4952  		}
  4953  	}()
  4954  	fc := &graphql.FieldContext{
  4955  		Object:   "OverlappingFields",
  4956  		Field:    field,
  4957  		Args:     nil,
  4958  		IsMethod: true,
  4959  	}
  4960  
  4961  	ctx = graphql.WithFieldContext(ctx, fc)
  4962  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4963  		ctx = rctx // use context from middleware stack in children
  4964  		return ec.resolvers.OverlappingFields().OldFoo(rctx, obj)
  4965  	})
  4966  
  4967  	if resTmp == nil {
  4968  		if !graphql.HasFieldError(ctx, fc) {
  4969  			ec.Errorf(ctx, "must not be null")
  4970  		}
  4971  		return graphql.Null
  4972  	}
  4973  	res := resTmp.(int)
  4974  	fc.Result = res
  4975  	return ec.marshalNInt2int(ctx, field.Selections, res)
  4976  }
  4977  
  4978  func (ec *executionContext) _OverlappingFields_newFoo(ctx context.Context, field graphql.CollectedField, obj *OverlappingFields) (ret graphql.Marshaler) {
  4979  	defer func() {
  4980  		if r := recover(); r != nil {
  4981  			ec.Error(ctx, ec.Recover(ctx, r))
  4982  			ret = graphql.Null
  4983  		}
  4984  	}()
  4985  	fc := &graphql.FieldContext{
  4986  		Object:   "OverlappingFields",
  4987  		Field:    field,
  4988  		Args:     nil,
  4989  		IsMethod: false,
  4990  	}
  4991  
  4992  	ctx = graphql.WithFieldContext(ctx, fc)
  4993  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  4994  		ctx = rctx // use context from middleware stack in children
  4995  		return obj.NewFoo, nil
  4996  	})
  4997  
  4998  	if resTmp == nil {
  4999  		if !graphql.HasFieldError(ctx, fc) {
  5000  			ec.Errorf(ctx, "must not be null")
  5001  		}
  5002  		return graphql.Null
  5003  	}
  5004  	res := resTmp.(int)
  5005  	fc.Result = res
  5006  	return ec.marshalNInt2int(ctx, field.Selections, res)
  5007  }
  5008  
  5009  func (ec *executionContext) _OverlappingFields_new_foo(ctx context.Context, field graphql.CollectedField, obj *OverlappingFields) (ret graphql.Marshaler) {
  5010  	defer func() {
  5011  		if r := recover(); r != nil {
  5012  			ec.Error(ctx, ec.Recover(ctx, r))
  5013  			ret = graphql.Null
  5014  		}
  5015  	}()
  5016  	fc := &graphql.FieldContext{
  5017  		Object:   "OverlappingFields",
  5018  		Field:    field,
  5019  		Args:     nil,
  5020  		IsMethod: false,
  5021  	}
  5022  
  5023  	ctx = graphql.WithFieldContext(ctx, fc)
  5024  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5025  		ctx = rctx // use context from middleware stack in children
  5026  		return obj.NewFoo, nil
  5027  	})
  5028  
  5029  	if resTmp == nil {
  5030  		if !graphql.HasFieldError(ctx, fc) {
  5031  			ec.Errorf(ctx, "must not be null")
  5032  		}
  5033  		return graphql.Null
  5034  	}
  5035  	res := resTmp.(int)
  5036  	fc.Result = res
  5037  	return ec.marshalNInt2int(ctx, field.Selections, res)
  5038  }
  5039  
  5040  func (ec *executionContext) _Panics_fieldScalarMarshal(ctx context.Context, field graphql.CollectedField, obj *Panics) (ret graphql.Marshaler) {
  5041  	defer func() {
  5042  		if r := recover(); r != nil {
  5043  			ec.Error(ctx, ec.Recover(ctx, r))
  5044  			ret = graphql.Null
  5045  		}
  5046  	}()
  5047  	fc := &graphql.FieldContext{
  5048  		Object:   "Panics",
  5049  		Field:    field,
  5050  		Args:     nil,
  5051  		IsMethod: true,
  5052  	}
  5053  
  5054  	ctx = graphql.WithFieldContext(ctx, fc)
  5055  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5056  		ctx = rctx // use context from middleware stack in children
  5057  		return ec.resolvers.Panics().FieldScalarMarshal(rctx, obj)
  5058  	})
  5059  
  5060  	if resTmp == nil {
  5061  		if !graphql.HasFieldError(ctx, fc) {
  5062  			ec.Errorf(ctx, "must not be null")
  5063  		}
  5064  		return graphql.Null
  5065  	}
  5066  	res := resTmp.([]MarshalPanic)
  5067  	fc.Result = res
  5068  	return ec.marshalNMarshalPanic2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanicᚄ(ctx, field.Selections, res)
  5069  }
  5070  
  5071  func (ec *executionContext) _Panics_fieldFuncMarshal(ctx context.Context, field graphql.CollectedField, obj *Panics) (ret graphql.Marshaler) {
  5072  	defer func() {
  5073  		if r := recover(); r != nil {
  5074  			ec.Error(ctx, ec.Recover(ctx, r))
  5075  			ret = graphql.Null
  5076  		}
  5077  	}()
  5078  	fc := &graphql.FieldContext{
  5079  		Object:   "Panics",
  5080  		Field:    field,
  5081  		Args:     nil,
  5082  		IsMethod: true,
  5083  	}
  5084  
  5085  	ctx = graphql.WithFieldContext(ctx, fc)
  5086  	rawArgs := field.ArgumentMap(ec.Variables)
  5087  	args, err := ec.field_Panics_fieldFuncMarshal_args(ctx, rawArgs)
  5088  	if err != nil {
  5089  		ec.Error(ctx, err)
  5090  		return graphql.Null
  5091  	}
  5092  	fc.Args = args
  5093  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5094  		ctx = rctx // use context from middleware stack in children
  5095  		return obj.FieldFuncMarshal(ctx, args["u"].([]MarshalPanic)), nil
  5096  	})
  5097  
  5098  	if resTmp == nil {
  5099  		if !graphql.HasFieldError(ctx, fc) {
  5100  			ec.Errorf(ctx, "must not be null")
  5101  		}
  5102  		return graphql.Null
  5103  	}
  5104  	res := resTmp.([]MarshalPanic)
  5105  	fc.Result = res
  5106  	return ec.marshalNMarshalPanic2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanicᚄ(ctx, field.Selections, res)
  5107  }
  5108  
  5109  func (ec *executionContext) _Panics_argUnmarshal(ctx context.Context, field graphql.CollectedField, obj *Panics) (ret graphql.Marshaler) {
  5110  	defer func() {
  5111  		if r := recover(); r != nil {
  5112  			ec.Error(ctx, ec.Recover(ctx, r))
  5113  			ret = graphql.Null
  5114  		}
  5115  	}()
  5116  	fc := &graphql.FieldContext{
  5117  		Object:   "Panics",
  5118  		Field:    field,
  5119  		Args:     nil,
  5120  		IsMethod: true,
  5121  	}
  5122  
  5123  	ctx = graphql.WithFieldContext(ctx, fc)
  5124  	rawArgs := field.ArgumentMap(ec.Variables)
  5125  	args, err := ec.field_Panics_argUnmarshal_args(ctx, rawArgs)
  5126  	if err != nil {
  5127  		ec.Error(ctx, err)
  5128  		return graphql.Null
  5129  	}
  5130  	fc.Args = args
  5131  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5132  		ctx = rctx // use context from middleware stack in children
  5133  		return ec.resolvers.Panics().ArgUnmarshal(rctx, obj, args["u"].([]MarshalPanic))
  5134  	})
  5135  
  5136  	if resTmp == nil {
  5137  		if !graphql.HasFieldError(ctx, fc) {
  5138  			ec.Errorf(ctx, "must not be null")
  5139  		}
  5140  		return graphql.Null
  5141  	}
  5142  	res := resTmp.(bool)
  5143  	fc.Result = res
  5144  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  5145  }
  5146  
  5147  func (ec *executionContext) _Primitive_value(ctx context.Context, field graphql.CollectedField, obj *Primitive) (ret graphql.Marshaler) {
  5148  	defer func() {
  5149  		if r := recover(); r != nil {
  5150  			ec.Error(ctx, ec.Recover(ctx, r))
  5151  			ret = graphql.Null
  5152  		}
  5153  	}()
  5154  	fc := &graphql.FieldContext{
  5155  		Object:   "Primitive",
  5156  		Field:    field,
  5157  		Args:     nil,
  5158  		IsMethod: true,
  5159  	}
  5160  
  5161  	ctx = graphql.WithFieldContext(ctx, fc)
  5162  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5163  		ctx = rctx // use context from middleware stack in children
  5164  		return ec.resolvers.Primitive().Value(rctx, obj)
  5165  	})
  5166  
  5167  	if resTmp == nil {
  5168  		if !graphql.HasFieldError(ctx, fc) {
  5169  			ec.Errorf(ctx, "must not be null")
  5170  		}
  5171  		return graphql.Null
  5172  	}
  5173  	res := resTmp.(int)
  5174  	fc.Result = res
  5175  	return ec.marshalNInt2int(ctx, field.Selections, res)
  5176  }
  5177  
  5178  func (ec *executionContext) _Primitive_squared(ctx context.Context, field graphql.CollectedField, obj *Primitive) (ret graphql.Marshaler) {
  5179  	defer func() {
  5180  		if r := recover(); r != nil {
  5181  			ec.Error(ctx, ec.Recover(ctx, r))
  5182  			ret = graphql.Null
  5183  		}
  5184  	}()
  5185  	fc := &graphql.FieldContext{
  5186  		Object:   "Primitive",
  5187  		Field:    field,
  5188  		Args:     nil,
  5189  		IsMethod: true,
  5190  	}
  5191  
  5192  	ctx = graphql.WithFieldContext(ctx, fc)
  5193  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5194  		ctx = rctx // use context from middleware stack in children
  5195  		return obj.Squared(), nil
  5196  	})
  5197  
  5198  	if resTmp == nil {
  5199  		if !graphql.HasFieldError(ctx, fc) {
  5200  			ec.Errorf(ctx, "must not be null")
  5201  		}
  5202  		return graphql.Null
  5203  	}
  5204  	res := resTmp.(int)
  5205  	fc.Result = res
  5206  	return ec.marshalNInt2int(ctx, field.Selections, res)
  5207  }
  5208  
  5209  func (ec *executionContext) _PrimitiveString_value(ctx context.Context, field graphql.CollectedField, obj *PrimitiveString) (ret graphql.Marshaler) {
  5210  	defer func() {
  5211  		if r := recover(); r != nil {
  5212  			ec.Error(ctx, ec.Recover(ctx, r))
  5213  			ret = graphql.Null
  5214  		}
  5215  	}()
  5216  	fc := &graphql.FieldContext{
  5217  		Object:   "PrimitiveString",
  5218  		Field:    field,
  5219  		Args:     nil,
  5220  		IsMethod: true,
  5221  	}
  5222  
  5223  	ctx = graphql.WithFieldContext(ctx, fc)
  5224  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5225  		ctx = rctx // use context from middleware stack in children
  5226  		return ec.resolvers.PrimitiveString().Value(rctx, obj)
  5227  	})
  5228  
  5229  	if resTmp == nil {
  5230  		if !graphql.HasFieldError(ctx, fc) {
  5231  			ec.Errorf(ctx, "must not be null")
  5232  		}
  5233  		return graphql.Null
  5234  	}
  5235  	res := resTmp.(string)
  5236  	fc.Result = res
  5237  	return ec.marshalNString2string(ctx, field.Selections, res)
  5238  }
  5239  
  5240  func (ec *executionContext) _PrimitiveString_doubled(ctx context.Context, field graphql.CollectedField, obj *PrimitiveString) (ret graphql.Marshaler) {
  5241  	defer func() {
  5242  		if r := recover(); r != nil {
  5243  			ec.Error(ctx, ec.Recover(ctx, r))
  5244  			ret = graphql.Null
  5245  		}
  5246  	}()
  5247  	fc := &graphql.FieldContext{
  5248  		Object:   "PrimitiveString",
  5249  		Field:    field,
  5250  		Args:     nil,
  5251  		IsMethod: true,
  5252  	}
  5253  
  5254  	ctx = graphql.WithFieldContext(ctx, fc)
  5255  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5256  		ctx = rctx // use context from middleware stack in children
  5257  		return obj.Doubled(), nil
  5258  	})
  5259  
  5260  	if resTmp == nil {
  5261  		if !graphql.HasFieldError(ctx, fc) {
  5262  			ec.Errorf(ctx, "must not be null")
  5263  		}
  5264  		return graphql.Null
  5265  	}
  5266  	res := resTmp.(string)
  5267  	fc.Result = res
  5268  	return ec.marshalNString2string(ctx, field.Selections, res)
  5269  }
  5270  
  5271  func (ec *executionContext) _PrimitiveString_len(ctx context.Context, field graphql.CollectedField, obj *PrimitiveString) (ret graphql.Marshaler) {
  5272  	defer func() {
  5273  		if r := recover(); r != nil {
  5274  			ec.Error(ctx, ec.Recover(ctx, r))
  5275  			ret = graphql.Null
  5276  		}
  5277  	}()
  5278  	fc := &graphql.FieldContext{
  5279  		Object:   "PrimitiveString",
  5280  		Field:    field,
  5281  		Args:     nil,
  5282  		IsMethod: true,
  5283  	}
  5284  
  5285  	ctx = graphql.WithFieldContext(ctx, fc)
  5286  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  5287  		ctx = rctx // use context from middleware stack in children
  5288  		return ec.resolvers.PrimitiveString().Len(rctx, obj)
  5289  	})
  5290  
  5291  	if resTmp == nil {
  5292  		if !graphql.HasFieldError(ctx, fc) {
  5293  			ec.Errorf(ctx, "must not be null")
  5294  		}
  5295  		return graphql.Null
  5296  	}
  5297  	res := resTmp.(int)
  5298  	fc.Result = res
  5299  	return ec.marshalNInt2int(ctx, field.Selections, res)
  5300  }
  5301  
  5302  func (ec *executionContext) _Query_invalidIdentifier(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5303  	defer func() {
  5304  		if r := recover(); r != nil {
  5305  			ec.Error(ctx, ec.Recover(ctx, r))
  5306  			ret = graphql.Null
  5307  		}
  5308  	}()
  5309  	fc := &graphql.FieldContext{
  5310  		Object:   "Query",
  5311  		Field:    field,
  5312  		Args:     nil,
  5313  		IsMethod: true,
  5314  	}
  5315  
  5316  	ctx = graphql.WithFieldContext(ctx, fc)
  5317  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5318  		ctx = rctx // use context from middleware stack in children
  5319  		return ec.resolvers.Query().InvalidIdentifier(rctx)
  5320  	})
  5321  
  5322  	if resTmp == nil {
  5323  		return graphql.Null
  5324  	}
  5325  	res := resTmp.(*invalid_packagename.InvalidIdentifier)
  5326  	fc.Result = res
  5327  	return ec.marshalOInvalidIdentifier2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋinvalidᚑpackagenameᚐInvalidIdentifier(ctx, field.Selections, res)
  5328  }
  5329  
  5330  func (ec *executionContext) _Query_collision(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5331  	defer func() {
  5332  		if r := recover(); r != nil {
  5333  			ec.Error(ctx, ec.Recover(ctx, r))
  5334  			ret = graphql.Null
  5335  		}
  5336  	}()
  5337  	fc := &graphql.FieldContext{
  5338  		Object:   "Query",
  5339  		Field:    field,
  5340  		Args:     nil,
  5341  		IsMethod: true,
  5342  	}
  5343  
  5344  	ctx = graphql.WithFieldContext(ctx, fc)
  5345  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5346  		ctx = rctx // use context from middleware stack in children
  5347  		return ec.resolvers.Query().Collision(rctx)
  5348  	})
  5349  
  5350  	if resTmp == nil {
  5351  		return graphql.Null
  5352  	}
  5353  	res := resTmp.(*introspection1.It)
  5354  	fc.Result = res
  5355  	return ec.marshalOIt2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋintrospectionᚐIt(ctx, field.Selections, res)
  5356  }
  5357  
  5358  func (ec *executionContext) _Query_mapInput(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5359  	defer func() {
  5360  		if r := recover(); r != nil {
  5361  			ec.Error(ctx, ec.Recover(ctx, r))
  5362  			ret = graphql.Null
  5363  		}
  5364  	}()
  5365  	fc := &graphql.FieldContext{
  5366  		Object:   "Query",
  5367  		Field:    field,
  5368  		Args:     nil,
  5369  		IsMethod: true,
  5370  	}
  5371  
  5372  	ctx = graphql.WithFieldContext(ctx, fc)
  5373  	rawArgs := field.ArgumentMap(ec.Variables)
  5374  	args, err := ec.field_Query_mapInput_args(ctx, rawArgs)
  5375  	if err != nil {
  5376  		ec.Error(ctx, err)
  5377  		return graphql.Null
  5378  	}
  5379  	fc.Args = args
  5380  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5381  		ctx = rctx // use context from middleware stack in children
  5382  		return ec.resolvers.Query().MapInput(rctx, args["input"].(map[string]interface{}))
  5383  	})
  5384  
  5385  	if resTmp == nil {
  5386  		return graphql.Null
  5387  	}
  5388  	res := resTmp.(*bool)
  5389  	fc.Result = res
  5390  	return ec.marshalOBoolean2ᚖbool(ctx, field.Selections, res)
  5391  }
  5392  
  5393  func (ec *executionContext) _Query_recursive(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5394  	defer func() {
  5395  		if r := recover(); r != nil {
  5396  			ec.Error(ctx, ec.Recover(ctx, r))
  5397  			ret = graphql.Null
  5398  		}
  5399  	}()
  5400  	fc := &graphql.FieldContext{
  5401  		Object:   "Query",
  5402  		Field:    field,
  5403  		Args:     nil,
  5404  		IsMethod: true,
  5405  	}
  5406  
  5407  	ctx = graphql.WithFieldContext(ctx, fc)
  5408  	rawArgs := field.ArgumentMap(ec.Variables)
  5409  	args, err := ec.field_Query_recursive_args(ctx, rawArgs)
  5410  	if err != nil {
  5411  		ec.Error(ctx, err)
  5412  		return graphql.Null
  5413  	}
  5414  	fc.Args = args
  5415  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5416  		ctx = rctx // use context from middleware stack in children
  5417  		return ec.resolvers.Query().Recursive(rctx, args["input"].(*RecursiveInputSlice))
  5418  	})
  5419  
  5420  	if resTmp == nil {
  5421  		return graphql.Null
  5422  	}
  5423  	res := resTmp.(*bool)
  5424  	fc.Result = res
  5425  	return ec.marshalOBoolean2ᚖbool(ctx, field.Selections, res)
  5426  }
  5427  
  5428  func (ec *executionContext) _Query_nestedInputs(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5429  	defer func() {
  5430  		if r := recover(); r != nil {
  5431  			ec.Error(ctx, ec.Recover(ctx, r))
  5432  			ret = graphql.Null
  5433  		}
  5434  	}()
  5435  	fc := &graphql.FieldContext{
  5436  		Object:   "Query",
  5437  		Field:    field,
  5438  		Args:     nil,
  5439  		IsMethod: true,
  5440  	}
  5441  
  5442  	ctx = graphql.WithFieldContext(ctx, fc)
  5443  	rawArgs := field.ArgumentMap(ec.Variables)
  5444  	args, err := ec.field_Query_nestedInputs_args(ctx, rawArgs)
  5445  	if err != nil {
  5446  		ec.Error(ctx, err)
  5447  		return graphql.Null
  5448  	}
  5449  	fc.Args = args
  5450  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5451  		ctx = rctx // use context from middleware stack in children
  5452  		return ec.resolvers.Query().NestedInputs(rctx, args["input"].([][]*OuterInput))
  5453  	})
  5454  
  5455  	if resTmp == nil {
  5456  		return graphql.Null
  5457  	}
  5458  	res := resTmp.(*bool)
  5459  	fc.Result = res
  5460  	return ec.marshalOBoolean2ᚖbool(ctx, field.Selections, res)
  5461  }
  5462  
  5463  func (ec *executionContext) _Query_nestedOutputs(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5464  	defer func() {
  5465  		if r := recover(); r != nil {
  5466  			ec.Error(ctx, ec.Recover(ctx, r))
  5467  			ret = graphql.Null
  5468  		}
  5469  	}()
  5470  	fc := &graphql.FieldContext{
  5471  		Object:   "Query",
  5472  		Field:    field,
  5473  		Args:     nil,
  5474  		IsMethod: true,
  5475  	}
  5476  
  5477  	ctx = graphql.WithFieldContext(ctx, fc)
  5478  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5479  		ctx = rctx // use context from middleware stack in children
  5480  		return ec.resolvers.Query().NestedOutputs(rctx)
  5481  	})
  5482  
  5483  	if resTmp == nil {
  5484  		return graphql.Null
  5485  	}
  5486  	res := resTmp.([][]*OuterObject)
  5487  	fc.Result = res
  5488  	return ec.marshalOOuterObject2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx, field.Selections, res)
  5489  }
  5490  
  5491  func (ec *executionContext) _Query_modelMethods(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5492  	defer func() {
  5493  		if r := recover(); r != nil {
  5494  			ec.Error(ctx, ec.Recover(ctx, r))
  5495  			ret = graphql.Null
  5496  		}
  5497  	}()
  5498  	fc := &graphql.FieldContext{
  5499  		Object:   "Query",
  5500  		Field:    field,
  5501  		Args:     nil,
  5502  		IsMethod: true,
  5503  	}
  5504  
  5505  	ctx = graphql.WithFieldContext(ctx, fc)
  5506  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5507  		ctx = rctx // use context from middleware stack in children
  5508  		return ec.resolvers.Query().ModelMethods(rctx)
  5509  	})
  5510  
  5511  	if resTmp == nil {
  5512  		return graphql.Null
  5513  	}
  5514  	res := resTmp.(*ModelMethods)
  5515  	fc.Result = res
  5516  	return ec.marshalOModelMethods2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐModelMethods(ctx, field.Selections, res)
  5517  }
  5518  
  5519  func (ec *executionContext) _Query_user(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5520  	defer func() {
  5521  		if r := recover(); r != nil {
  5522  			ec.Error(ctx, ec.Recover(ctx, r))
  5523  			ret = graphql.Null
  5524  		}
  5525  	}()
  5526  	fc := &graphql.FieldContext{
  5527  		Object:   "Query",
  5528  		Field:    field,
  5529  		Args:     nil,
  5530  		IsMethod: true,
  5531  	}
  5532  
  5533  	ctx = graphql.WithFieldContext(ctx, fc)
  5534  	rawArgs := field.ArgumentMap(ec.Variables)
  5535  	args, err := ec.field_Query_user_args(ctx, rawArgs)
  5536  	if err != nil {
  5537  		ec.Error(ctx, err)
  5538  		return graphql.Null
  5539  	}
  5540  	fc.Args = args
  5541  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5542  		ctx = rctx // use context from middleware stack in children
  5543  		return ec.resolvers.Query().User(rctx, args["id"].(int))
  5544  	})
  5545  
  5546  	if resTmp == nil {
  5547  		if !graphql.HasFieldError(ctx, fc) {
  5548  			ec.Errorf(ctx, "must not be null")
  5549  		}
  5550  		return graphql.Null
  5551  	}
  5552  	res := resTmp.(*User)
  5553  	fc.Result = res
  5554  	return ec.marshalNUser2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐUser(ctx, field.Selections, res)
  5555  }
  5556  
  5557  func (ec *executionContext) _Query_nullableArg(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5558  	defer func() {
  5559  		if r := recover(); r != nil {
  5560  			ec.Error(ctx, ec.Recover(ctx, r))
  5561  			ret = graphql.Null
  5562  		}
  5563  	}()
  5564  	fc := &graphql.FieldContext{
  5565  		Object:   "Query",
  5566  		Field:    field,
  5567  		Args:     nil,
  5568  		IsMethod: true,
  5569  	}
  5570  
  5571  	ctx = graphql.WithFieldContext(ctx, fc)
  5572  	rawArgs := field.ArgumentMap(ec.Variables)
  5573  	args, err := ec.field_Query_nullableArg_args(ctx, rawArgs)
  5574  	if err != nil {
  5575  		ec.Error(ctx, err)
  5576  		return graphql.Null
  5577  	}
  5578  	fc.Args = args
  5579  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5580  		ctx = rctx // use context from middleware stack in children
  5581  		return ec.resolvers.Query().NullableArg(rctx, args["arg"].(*int))
  5582  	})
  5583  
  5584  	if resTmp == nil {
  5585  		return graphql.Null
  5586  	}
  5587  	res := resTmp.(*string)
  5588  	fc.Result = res
  5589  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  5590  }
  5591  
  5592  func (ec *executionContext) _Query_inputSlice(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5593  	defer func() {
  5594  		if r := recover(); r != nil {
  5595  			ec.Error(ctx, ec.Recover(ctx, r))
  5596  			ret = graphql.Null
  5597  		}
  5598  	}()
  5599  	fc := &graphql.FieldContext{
  5600  		Object:   "Query",
  5601  		Field:    field,
  5602  		Args:     nil,
  5603  		IsMethod: true,
  5604  	}
  5605  
  5606  	ctx = graphql.WithFieldContext(ctx, fc)
  5607  	rawArgs := field.ArgumentMap(ec.Variables)
  5608  	args, err := ec.field_Query_inputSlice_args(ctx, rawArgs)
  5609  	if err != nil {
  5610  		ec.Error(ctx, err)
  5611  		return graphql.Null
  5612  	}
  5613  	fc.Args = args
  5614  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5615  		ctx = rctx // use context from middleware stack in children
  5616  		return ec.resolvers.Query().InputSlice(rctx, args["arg"].([]string))
  5617  	})
  5618  
  5619  	if resTmp == nil {
  5620  		if !graphql.HasFieldError(ctx, fc) {
  5621  			ec.Errorf(ctx, "must not be null")
  5622  		}
  5623  		return graphql.Null
  5624  	}
  5625  	res := resTmp.(bool)
  5626  	fc.Result = res
  5627  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  5628  }
  5629  
  5630  func (ec *executionContext) _Query_shapeUnion(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5631  	defer func() {
  5632  		if r := recover(); r != nil {
  5633  			ec.Error(ctx, ec.Recover(ctx, r))
  5634  			ret = graphql.Null
  5635  		}
  5636  	}()
  5637  	fc := &graphql.FieldContext{
  5638  		Object:   "Query",
  5639  		Field:    field,
  5640  		Args:     nil,
  5641  		IsMethod: true,
  5642  	}
  5643  
  5644  	ctx = graphql.WithFieldContext(ctx, fc)
  5645  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5646  		ctx = rctx // use context from middleware stack in children
  5647  		return ec.resolvers.Query().ShapeUnion(rctx)
  5648  	})
  5649  
  5650  	if resTmp == nil {
  5651  		if !graphql.HasFieldError(ctx, fc) {
  5652  			ec.Errorf(ctx, "must not be null")
  5653  		}
  5654  		return graphql.Null
  5655  	}
  5656  	res := resTmp.(ShapeUnion)
  5657  	fc.Result = res
  5658  	return ec.marshalNShapeUnion2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShapeUnion(ctx, field.Selections, res)
  5659  }
  5660  
  5661  func (ec *executionContext) _Query_autobind(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5662  	defer func() {
  5663  		if r := recover(); r != nil {
  5664  			ec.Error(ctx, ec.Recover(ctx, r))
  5665  			ret = graphql.Null
  5666  		}
  5667  	}()
  5668  	fc := &graphql.FieldContext{
  5669  		Object:   "Query",
  5670  		Field:    field,
  5671  		Args:     nil,
  5672  		IsMethod: true,
  5673  	}
  5674  
  5675  	ctx = graphql.WithFieldContext(ctx, fc)
  5676  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5677  		ctx = rctx // use context from middleware stack in children
  5678  		return ec.resolvers.Query().Autobind(rctx)
  5679  	})
  5680  
  5681  	if resTmp == nil {
  5682  		return graphql.Null
  5683  	}
  5684  	res := resTmp.(*Autobind)
  5685  	fc.Result = res
  5686  	return ec.marshalOAutobind2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐAutobind(ctx, field.Selections, res)
  5687  }
  5688  
  5689  func (ec *executionContext) _Query_deprecatedField(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5690  	defer func() {
  5691  		if r := recover(); r != nil {
  5692  			ec.Error(ctx, ec.Recover(ctx, r))
  5693  			ret = graphql.Null
  5694  		}
  5695  	}()
  5696  	fc := &graphql.FieldContext{
  5697  		Object:   "Query",
  5698  		Field:    field,
  5699  		Args:     nil,
  5700  		IsMethod: true,
  5701  	}
  5702  
  5703  	ctx = graphql.WithFieldContext(ctx, fc)
  5704  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5705  		ctx = rctx // use context from middleware stack in children
  5706  		return ec.resolvers.Query().DeprecatedField(rctx)
  5707  	})
  5708  
  5709  	if resTmp == nil {
  5710  		if !graphql.HasFieldError(ctx, fc) {
  5711  			ec.Errorf(ctx, "must not be null")
  5712  		}
  5713  		return graphql.Null
  5714  	}
  5715  	res := resTmp.(string)
  5716  	fc.Result = res
  5717  	return ec.marshalNString2string(ctx, field.Selections, res)
  5718  }
  5719  
  5720  func (ec *executionContext) _Query_overlapping(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5721  	defer func() {
  5722  		if r := recover(); r != nil {
  5723  			ec.Error(ctx, ec.Recover(ctx, r))
  5724  			ret = graphql.Null
  5725  		}
  5726  	}()
  5727  	fc := &graphql.FieldContext{
  5728  		Object:   "Query",
  5729  		Field:    field,
  5730  		Args:     nil,
  5731  		IsMethod: true,
  5732  	}
  5733  
  5734  	ctx = graphql.WithFieldContext(ctx, fc)
  5735  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5736  		ctx = rctx // use context from middleware stack in children
  5737  		return ec.resolvers.Query().Overlapping(rctx)
  5738  	})
  5739  
  5740  	if resTmp == nil {
  5741  		return graphql.Null
  5742  	}
  5743  	res := resTmp.(*OverlappingFields)
  5744  	fc.Result = res
  5745  	return ec.marshalOOverlappingFields2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOverlappingFields(ctx, field.Selections, res)
  5746  }
  5747  
  5748  func (ec *executionContext) _Query_directiveArg(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5749  	defer func() {
  5750  		if r := recover(); r != nil {
  5751  			ec.Error(ctx, ec.Recover(ctx, r))
  5752  			ret = graphql.Null
  5753  		}
  5754  	}()
  5755  	fc := &graphql.FieldContext{
  5756  		Object:   "Query",
  5757  		Field:    field,
  5758  		Args:     nil,
  5759  		IsMethod: true,
  5760  	}
  5761  
  5762  	ctx = graphql.WithFieldContext(ctx, fc)
  5763  	rawArgs := field.ArgumentMap(ec.Variables)
  5764  	args, err := ec.field_Query_directiveArg_args(ctx, rawArgs)
  5765  	if err != nil {
  5766  		ec.Error(ctx, err)
  5767  		return graphql.Null
  5768  	}
  5769  	fc.Args = args
  5770  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5771  		ctx = rctx // use context from middleware stack in children
  5772  		return ec.resolvers.Query().DirectiveArg(rctx, args["arg"].(string))
  5773  	})
  5774  
  5775  	if resTmp == nil {
  5776  		return graphql.Null
  5777  	}
  5778  	res := resTmp.(*string)
  5779  	fc.Result = res
  5780  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  5781  }
  5782  
  5783  func (ec *executionContext) _Query_directiveNullableArg(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5784  	defer func() {
  5785  		if r := recover(); r != nil {
  5786  			ec.Error(ctx, ec.Recover(ctx, r))
  5787  			ret = graphql.Null
  5788  		}
  5789  	}()
  5790  	fc := &graphql.FieldContext{
  5791  		Object:   "Query",
  5792  		Field:    field,
  5793  		Args:     nil,
  5794  		IsMethod: true,
  5795  	}
  5796  
  5797  	ctx = graphql.WithFieldContext(ctx, fc)
  5798  	rawArgs := field.ArgumentMap(ec.Variables)
  5799  	args, err := ec.field_Query_directiveNullableArg_args(ctx, rawArgs)
  5800  	if err != nil {
  5801  		ec.Error(ctx, err)
  5802  		return graphql.Null
  5803  	}
  5804  	fc.Args = args
  5805  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5806  		ctx = rctx // use context from middleware stack in children
  5807  		return ec.resolvers.Query().DirectiveNullableArg(rctx, args["arg"].(*int), args["arg2"].(*int), args["arg3"].(*string))
  5808  	})
  5809  
  5810  	if resTmp == nil {
  5811  		return graphql.Null
  5812  	}
  5813  	res := resTmp.(*string)
  5814  	fc.Result = res
  5815  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  5816  }
  5817  
  5818  func (ec *executionContext) _Query_directiveInputNullable(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5819  	defer func() {
  5820  		if r := recover(); r != nil {
  5821  			ec.Error(ctx, ec.Recover(ctx, r))
  5822  			ret = graphql.Null
  5823  		}
  5824  	}()
  5825  	fc := &graphql.FieldContext{
  5826  		Object:   "Query",
  5827  		Field:    field,
  5828  		Args:     nil,
  5829  		IsMethod: true,
  5830  	}
  5831  
  5832  	ctx = graphql.WithFieldContext(ctx, fc)
  5833  	rawArgs := field.ArgumentMap(ec.Variables)
  5834  	args, err := ec.field_Query_directiveInputNullable_args(ctx, rawArgs)
  5835  	if err != nil {
  5836  		ec.Error(ctx, err)
  5837  		return graphql.Null
  5838  	}
  5839  	fc.Args = args
  5840  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5841  		ctx = rctx // use context from middleware stack in children
  5842  		return ec.resolvers.Query().DirectiveInputNullable(rctx, args["arg"].(*InputDirectives))
  5843  	})
  5844  
  5845  	if resTmp == nil {
  5846  		return graphql.Null
  5847  	}
  5848  	res := resTmp.(*string)
  5849  	fc.Result = res
  5850  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  5851  }
  5852  
  5853  func (ec *executionContext) _Query_directiveInput(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5854  	defer func() {
  5855  		if r := recover(); r != nil {
  5856  			ec.Error(ctx, ec.Recover(ctx, r))
  5857  			ret = graphql.Null
  5858  		}
  5859  	}()
  5860  	fc := &graphql.FieldContext{
  5861  		Object:   "Query",
  5862  		Field:    field,
  5863  		Args:     nil,
  5864  		IsMethod: true,
  5865  	}
  5866  
  5867  	ctx = graphql.WithFieldContext(ctx, fc)
  5868  	rawArgs := field.ArgumentMap(ec.Variables)
  5869  	args, err := ec.field_Query_directiveInput_args(ctx, rawArgs)
  5870  	if err != nil {
  5871  		ec.Error(ctx, err)
  5872  		return graphql.Null
  5873  	}
  5874  	fc.Args = args
  5875  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5876  		ctx = rctx // use context from middleware stack in children
  5877  		return ec.resolvers.Query().DirectiveInput(rctx, args["arg"].(InputDirectives))
  5878  	})
  5879  
  5880  	if resTmp == nil {
  5881  		return graphql.Null
  5882  	}
  5883  	res := resTmp.(*string)
  5884  	fc.Result = res
  5885  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  5886  }
  5887  
  5888  func (ec *executionContext) _Query_directiveInputType(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5889  	defer func() {
  5890  		if r := recover(); r != nil {
  5891  			ec.Error(ctx, ec.Recover(ctx, r))
  5892  			ret = graphql.Null
  5893  		}
  5894  	}()
  5895  	fc := &graphql.FieldContext{
  5896  		Object:   "Query",
  5897  		Field:    field,
  5898  		Args:     nil,
  5899  		IsMethod: true,
  5900  	}
  5901  
  5902  	ctx = graphql.WithFieldContext(ctx, fc)
  5903  	rawArgs := field.ArgumentMap(ec.Variables)
  5904  	args, err := ec.field_Query_directiveInputType_args(ctx, rawArgs)
  5905  	if err != nil {
  5906  		ec.Error(ctx, err)
  5907  		return graphql.Null
  5908  	}
  5909  	fc.Args = args
  5910  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5911  		ctx = rctx // use context from middleware stack in children
  5912  		return ec.resolvers.Query().DirectiveInputType(rctx, args["arg"].(InnerInput))
  5913  	})
  5914  
  5915  	if resTmp == nil {
  5916  		return graphql.Null
  5917  	}
  5918  	res := resTmp.(*string)
  5919  	fc.Result = res
  5920  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  5921  }
  5922  
  5923  func (ec *executionContext) _Query_directiveObject(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5924  	defer func() {
  5925  		if r := recover(); r != nil {
  5926  			ec.Error(ctx, ec.Recover(ctx, r))
  5927  			ret = graphql.Null
  5928  		}
  5929  	}()
  5930  	fc := &graphql.FieldContext{
  5931  		Object:   "Query",
  5932  		Field:    field,
  5933  		Args:     nil,
  5934  		IsMethod: true,
  5935  	}
  5936  
  5937  	ctx = graphql.WithFieldContext(ctx, fc)
  5938  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5939  		ctx = rctx // use context from middleware stack in children
  5940  		return ec.resolvers.Query().DirectiveObject(rctx)
  5941  	})
  5942  
  5943  	if resTmp == nil {
  5944  		return graphql.Null
  5945  	}
  5946  	res := resTmp.(*ObjectDirectives)
  5947  	fc.Result = res
  5948  	return ec.marshalOObjectDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐObjectDirectives(ctx, field.Selections, res)
  5949  }
  5950  
  5951  func (ec *executionContext) _Query_directiveObjectWithCustomGoModel(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5952  	defer func() {
  5953  		if r := recover(); r != nil {
  5954  			ec.Error(ctx, ec.Recover(ctx, r))
  5955  			ret = graphql.Null
  5956  		}
  5957  	}()
  5958  	fc := &graphql.FieldContext{
  5959  		Object:   "Query",
  5960  		Field:    field,
  5961  		Args:     nil,
  5962  		IsMethod: true,
  5963  	}
  5964  
  5965  	ctx = graphql.WithFieldContext(ctx, fc)
  5966  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  5967  		ctx = rctx // use context from middleware stack in children
  5968  		return ec.resolvers.Query().DirectiveObjectWithCustomGoModel(rctx)
  5969  	})
  5970  
  5971  	if resTmp == nil {
  5972  		return graphql.Null
  5973  	}
  5974  	res := resTmp.(*ObjectDirectivesWithCustomGoModel)
  5975  	fc.Result = res
  5976  	return ec.marshalOObjectDirectivesWithCustomGoModel2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐObjectDirectivesWithCustomGoModel(ctx, field.Selections, res)
  5977  }
  5978  
  5979  func (ec *executionContext) _Query_directiveFieldDef(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  5980  	defer func() {
  5981  		if r := recover(); r != nil {
  5982  			ec.Error(ctx, ec.Recover(ctx, r))
  5983  			ret = graphql.Null
  5984  		}
  5985  	}()
  5986  	fc := &graphql.FieldContext{
  5987  		Object:   "Query",
  5988  		Field:    field,
  5989  		Args:     nil,
  5990  		IsMethod: true,
  5991  	}
  5992  
  5993  	ctx = graphql.WithFieldContext(ctx, fc)
  5994  	rawArgs := field.ArgumentMap(ec.Variables)
  5995  	args, err := ec.field_Query_directiveFieldDef_args(ctx, rawArgs)
  5996  	if err != nil {
  5997  		ec.Error(ctx, err)
  5998  		return graphql.Null
  5999  	}
  6000  	fc.Args = args
  6001  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6002  		directive0 := func(rctx context.Context) (interface{}, error) {
  6003  			ctx = rctx // use context from middleware stack in children
  6004  			return ec.resolvers.Query().DirectiveFieldDef(rctx, args["ret"].(string))
  6005  		}
  6006  		directive1 := func(ctx context.Context) (interface{}, error) {
  6007  			min, err := ec.unmarshalNInt2int(ctx, 1)
  6008  			if err != nil {
  6009  				return nil, err
  6010  			}
  6011  			message, err := ec.unmarshalOString2ᚖstring(ctx, "not valid")
  6012  			if err != nil {
  6013  				return nil, err
  6014  			}
  6015  			if ec.directives.Length == nil {
  6016  				return nil, errors.New("directive length is not implemented")
  6017  			}
  6018  			return ec.directives.Length(ctx, nil, directive0, min, nil, message)
  6019  		}
  6020  
  6021  		tmp, err := directive1(rctx)
  6022  		if err != nil {
  6023  			return nil, err
  6024  		}
  6025  		if tmp == nil {
  6026  			return nil, nil
  6027  		}
  6028  		if data, ok := tmp.(string); ok {
  6029  			return data, nil
  6030  		}
  6031  		return nil, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  6032  	})
  6033  
  6034  	if resTmp == nil {
  6035  		if !graphql.HasFieldError(ctx, fc) {
  6036  			ec.Errorf(ctx, "must not be null")
  6037  		}
  6038  		return graphql.Null
  6039  	}
  6040  	res := resTmp.(string)
  6041  	fc.Result = res
  6042  	return ec.marshalNString2string(ctx, field.Selections, res)
  6043  }
  6044  
  6045  func (ec *executionContext) _Query_directiveField(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6046  	defer func() {
  6047  		if r := recover(); r != nil {
  6048  			ec.Error(ctx, ec.Recover(ctx, r))
  6049  			ret = graphql.Null
  6050  		}
  6051  	}()
  6052  	fc := &graphql.FieldContext{
  6053  		Object:   "Query",
  6054  		Field:    field,
  6055  		Args:     nil,
  6056  		IsMethod: true,
  6057  	}
  6058  
  6059  	ctx = graphql.WithFieldContext(ctx, fc)
  6060  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6061  		ctx = rctx // use context from middleware stack in children
  6062  		return ec.resolvers.Query().DirectiveField(rctx)
  6063  	})
  6064  
  6065  	if resTmp == nil {
  6066  		return graphql.Null
  6067  	}
  6068  	res := resTmp.(*string)
  6069  	fc.Result = res
  6070  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  6071  }
  6072  
  6073  func (ec *executionContext) _Query_directiveDouble(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6074  	defer func() {
  6075  		if r := recover(); r != nil {
  6076  			ec.Error(ctx, ec.Recover(ctx, r))
  6077  			ret = graphql.Null
  6078  		}
  6079  	}()
  6080  	fc := &graphql.FieldContext{
  6081  		Object:   "Query",
  6082  		Field:    field,
  6083  		Args:     nil,
  6084  		IsMethod: true,
  6085  	}
  6086  
  6087  	ctx = graphql.WithFieldContext(ctx, fc)
  6088  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6089  		directive0 := func(rctx context.Context) (interface{}, error) {
  6090  			ctx = rctx // use context from middleware stack in children
  6091  			return ec.resolvers.Query().DirectiveDouble(rctx)
  6092  		}
  6093  		directive1 := func(ctx context.Context) (interface{}, error) {
  6094  			if ec.directives.Directive1 == nil {
  6095  				return nil, errors.New("directive directive1 is not implemented")
  6096  			}
  6097  			return ec.directives.Directive1(ctx, nil, directive0)
  6098  		}
  6099  		directive2 := func(ctx context.Context) (interface{}, error) {
  6100  			if ec.directives.Directive2 == nil {
  6101  				return nil, errors.New("directive directive2 is not implemented")
  6102  			}
  6103  			return ec.directives.Directive2(ctx, nil, directive1)
  6104  		}
  6105  
  6106  		tmp, err := directive2(rctx)
  6107  		if err != nil {
  6108  			return nil, err
  6109  		}
  6110  		if tmp == nil {
  6111  			return nil, nil
  6112  		}
  6113  		if data, ok := tmp.(*string); ok {
  6114  			return data, nil
  6115  		}
  6116  		return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  6117  	})
  6118  
  6119  	if resTmp == nil {
  6120  		return graphql.Null
  6121  	}
  6122  	res := resTmp.(*string)
  6123  	fc.Result = res
  6124  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  6125  }
  6126  
  6127  func (ec *executionContext) _Query_directiveUnimplemented(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6128  	defer func() {
  6129  		if r := recover(); r != nil {
  6130  			ec.Error(ctx, ec.Recover(ctx, r))
  6131  			ret = graphql.Null
  6132  		}
  6133  	}()
  6134  	fc := &graphql.FieldContext{
  6135  		Object:   "Query",
  6136  		Field:    field,
  6137  		Args:     nil,
  6138  		IsMethod: true,
  6139  	}
  6140  
  6141  	ctx = graphql.WithFieldContext(ctx, fc)
  6142  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6143  		directive0 := func(rctx context.Context) (interface{}, error) {
  6144  			ctx = rctx // use context from middleware stack in children
  6145  			return ec.resolvers.Query().DirectiveUnimplemented(rctx)
  6146  		}
  6147  		directive1 := func(ctx context.Context) (interface{}, error) {
  6148  			if ec.directives.Unimplemented == nil {
  6149  				return nil, errors.New("directive unimplemented is not implemented")
  6150  			}
  6151  			return ec.directives.Unimplemented(ctx, nil, directive0)
  6152  		}
  6153  
  6154  		tmp, err := directive1(rctx)
  6155  		if err != nil {
  6156  			return nil, err
  6157  		}
  6158  		if tmp == nil {
  6159  			return nil, nil
  6160  		}
  6161  		if data, ok := tmp.(*string); ok {
  6162  			return data, nil
  6163  		}
  6164  		return nil, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  6165  	})
  6166  
  6167  	if resTmp == nil {
  6168  		return graphql.Null
  6169  	}
  6170  	res := resTmp.(*string)
  6171  	fc.Result = res
  6172  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  6173  }
  6174  
  6175  func (ec *executionContext) _Query_embeddedCase1(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6176  	defer func() {
  6177  		if r := recover(); r != nil {
  6178  			ec.Error(ctx, ec.Recover(ctx, r))
  6179  			ret = graphql.Null
  6180  		}
  6181  	}()
  6182  	fc := &graphql.FieldContext{
  6183  		Object:   "Query",
  6184  		Field:    field,
  6185  		Args:     nil,
  6186  		IsMethod: true,
  6187  	}
  6188  
  6189  	ctx = graphql.WithFieldContext(ctx, fc)
  6190  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6191  		ctx = rctx // use context from middleware stack in children
  6192  		return ec.resolvers.Query().EmbeddedCase1(rctx)
  6193  	})
  6194  
  6195  	if resTmp == nil {
  6196  		return graphql.Null
  6197  	}
  6198  	res := resTmp.(*EmbeddedCase1)
  6199  	fc.Result = res
  6200  	return ec.marshalOEmbeddedCase12ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase1(ctx, field.Selections, res)
  6201  }
  6202  
  6203  func (ec *executionContext) _Query_embeddedCase2(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6204  	defer func() {
  6205  		if r := recover(); r != nil {
  6206  			ec.Error(ctx, ec.Recover(ctx, r))
  6207  			ret = graphql.Null
  6208  		}
  6209  	}()
  6210  	fc := &graphql.FieldContext{
  6211  		Object:   "Query",
  6212  		Field:    field,
  6213  		Args:     nil,
  6214  		IsMethod: true,
  6215  	}
  6216  
  6217  	ctx = graphql.WithFieldContext(ctx, fc)
  6218  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6219  		ctx = rctx // use context from middleware stack in children
  6220  		return ec.resolvers.Query().EmbeddedCase2(rctx)
  6221  	})
  6222  
  6223  	if resTmp == nil {
  6224  		return graphql.Null
  6225  	}
  6226  	res := resTmp.(*EmbeddedCase2)
  6227  	fc.Result = res
  6228  	return ec.marshalOEmbeddedCase22ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase2(ctx, field.Selections, res)
  6229  }
  6230  
  6231  func (ec *executionContext) _Query_embeddedCase3(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6232  	defer func() {
  6233  		if r := recover(); r != nil {
  6234  			ec.Error(ctx, ec.Recover(ctx, r))
  6235  			ret = graphql.Null
  6236  		}
  6237  	}()
  6238  	fc := &graphql.FieldContext{
  6239  		Object:   "Query",
  6240  		Field:    field,
  6241  		Args:     nil,
  6242  		IsMethod: true,
  6243  	}
  6244  
  6245  	ctx = graphql.WithFieldContext(ctx, fc)
  6246  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6247  		ctx = rctx // use context from middleware stack in children
  6248  		return ec.resolvers.Query().EmbeddedCase3(rctx)
  6249  	})
  6250  
  6251  	if resTmp == nil {
  6252  		return graphql.Null
  6253  	}
  6254  	res := resTmp.(*EmbeddedCase3)
  6255  	fc.Result = res
  6256  	return ec.marshalOEmbeddedCase32ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase3(ctx, field.Selections, res)
  6257  }
  6258  
  6259  func (ec *executionContext) _Query_enumInInput(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6260  	defer func() {
  6261  		if r := recover(); r != nil {
  6262  			ec.Error(ctx, ec.Recover(ctx, r))
  6263  			ret = graphql.Null
  6264  		}
  6265  	}()
  6266  	fc := &graphql.FieldContext{
  6267  		Object:   "Query",
  6268  		Field:    field,
  6269  		Args:     nil,
  6270  		IsMethod: true,
  6271  	}
  6272  
  6273  	ctx = graphql.WithFieldContext(ctx, fc)
  6274  	rawArgs := field.ArgumentMap(ec.Variables)
  6275  	args, err := ec.field_Query_enumInInput_args(ctx, rawArgs)
  6276  	if err != nil {
  6277  		ec.Error(ctx, err)
  6278  		return graphql.Null
  6279  	}
  6280  	fc.Args = args
  6281  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6282  		ctx = rctx // use context from middleware stack in children
  6283  		return ec.resolvers.Query().EnumInInput(rctx, args["input"].(*InputWithEnumValue))
  6284  	})
  6285  
  6286  	if resTmp == nil {
  6287  		if !graphql.HasFieldError(ctx, fc) {
  6288  			ec.Errorf(ctx, "must not be null")
  6289  		}
  6290  		return graphql.Null
  6291  	}
  6292  	res := resTmp.(EnumTest)
  6293  	fc.Result = res
  6294  	return ec.marshalNEnumTest2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEnumTest(ctx, field.Selections, res)
  6295  }
  6296  
  6297  func (ec *executionContext) _Query_shapes(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6298  	defer func() {
  6299  		if r := recover(); r != nil {
  6300  			ec.Error(ctx, ec.Recover(ctx, r))
  6301  			ret = graphql.Null
  6302  		}
  6303  	}()
  6304  	fc := &graphql.FieldContext{
  6305  		Object:   "Query",
  6306  		Field:    field,
  6307  		Args:     nil,
  6308  		IsMethod: true,
  6309  	}
  6310  
  6311  	ctx = graphql.WithFieldContext(ctx, fc)
  6312  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6313  		ctx = rctx // use context from middleware stack in children
  6314  		return ec.resolvers.Query().Shapes(rctx)
  6315  	})
  6316  
  6317  	if resTmp == nil {
  6318  		return graphql.Null
  6319  	}
  6320  	res := resTmp.([]Shape)
  6321  	fc.Result = res
  6322  	return ec.marshalOShape2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShape(ctx, field.Selections, res)
  6323  }
  6324  
  6325  func (ec *executionContext) _Query_noShape(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6326  	defer func() {
  6327  		if r := recover(); r != nil {
  6328  			ec.Error(ctx, ec.Recover(ctx, r))
  6329  			ret = graphql.Null
  6330  		}
  6331  	}()
  6332  	fc := &graphql.FieldContext{
  6333  		Object:   "Query",
  6334  		Field:    field,
  6335  		Args:     nil,
  6336  		IsMethod: true,
  6337  	}
  6338  
  6339  	ctx = graphql.WithFieldContext(ctx, fc)
  6340  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6341  		directive0 := func(rctx context.Context) (interface{}, error) {
  6342  			ctx = rctx // use context from middleware stack in children
  6343  			return ec.resolvers.Query().NoShape(rctx)
  6344  		}
  6345  		directive1 := func(ctx context.Context) (interface{}, error) {
  6346  			if ec.directives.MakeNil == nil {
  6347  				return nil, errors.New("directive makeNil is not implemented")
  6348  			}
  6349  			return ec.directives.MakeNil(ctx, nil, directive0)
  6350  		}
  6351  
  6352  		tmp, err := directive1(rctx)
  6353  		if err != nil {
  6354  			return nil, err
  6355  		}
  6356  		if tmp == nil {
  6357  			return nil, nil
  6358  		}
  6359  		if data, ok := tmp.(Shape); ok {
  6360  			return data, nil
  6361  		}
  6362  		return nil, fmt.Errorf(`unexpected type %T from directive, should be git.sr.ht/~sircmpwn/gqlgen/codegen/testserver.Shape`, tmp)
  6363  	})
  6364  
  6365  	if resTmp == nil {
  6366  		return graphql.Null
  6367  	}
  6368  	res := resTmp.(Shape)
  6369  	fc.Result = res
  6370  	return ec.marshalOShape2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShape(ctx, field.Selections, res)
  6371  }
  6372  
  6373  func (ec *executionContext) _Query_node(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6374  	defer func() {
  6375  		if r := recover(); r != nil {
  6376  			ec.Error(ctx, ec.Recover(ctx, r))
  6377  			ret = graphql.Null
  6378  		}
  6379  	}()
  6380  	fc := &graphql.FieldContext{
  6381  		Object:   "Query",
  6382  		Field:    field,
  6383  		Args:     nil,
  6384  		IsMethod: true,
  6385  	}
  6386  
  6387  	ctx = graphql.WithFieldContext(ctx, fc)
  6388  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6389  		ctx = rctx // use context from middleware stack in children
  6390  		return ec.resolvers.Query().Node(rctx)
  6391  	})
  6392  
  6393  	if resTmp == nil {
  6394  		if !graphql.HasFieldError(ctx, fc) {
  6395  			ec.Errorf(ctx, "must not be null")
  6396  		}
  6397  		return graphql.Null
  6398  	}
  6399  	res := resTmp.(Node)
  6400  	fc.Result = res
  6401  	return ec.marshalNNode2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNode(ctx, field.Selections, res)
  6402  }
  6403  
  6404  func (ec *executionContext) _Query_noShapeTypedNil(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6405  	defer func() {
  6406  		if r := recover(); r != nil {
  6407  			ec.Error(ctx, ec.Recover(ctx, r))
  6408  			ret = graphql.Null
  6409  		}
  6410  	}()
  6411  	fc := &graphql.FieldContext{
  6412  		Object:   "Query",
  6413  		Field:    field,
  6414  		Args:     nil,
  6415  		IsMethod: true,
  6416  	}
  6417  
  6418  	ctx = graphql.WithFieldContext(ctx, fc)
  6419  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6420  		directive0 := func(rctx context.Context) (interface{}, error) {
  6421  			ctx = rctx // use context from middleware stack in children
  6422  			return ec.resolvers.Query().NoShapeTypedNil(rctx)
  6423  		}
  6424  		directive1 := func(ctx context.Context) (interface{}, error) {
  6425  			if ec.directives.MakeTypedNil == nil {
  6426  				return nil, errors.New("directive makeTypedNil is not implemented")
  6427  			}
  6428  			return ec.directives.MakeTypedNil(ctx, nil, directive0)
  6429  		}
  6430  
  6431  		tmp, err := directive1(rctx)
  6432  		if err != nil {
  6433  			return nil, err
  6434  		}
  6435  		if tmp == nil {
  6436  			return nil, nil
  6437  		}
  6438  		if data, ok := tmp.(Shape); ok {
  6439  			return data, nil
  6440  		}
  6441  		return nil, fmt.Errorf(`unexpected type %T from directive, should be git.sr.ht/~sircmpwn/gqlgen/codegen/testserver.Shape`, tmp)
  6442  	})
  6443  
  6444  	if resTmp == nil {
  6445  		return graphql.Null
  6446  	}
  6447  	res := resTmp.(Shape)
  6448  	fc.Result = res
  6449  	return ec.marshalOShape2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShape(ctx, field.Selections, res)
  6450  }
  6451  
  6452  func (ec *executionContext) _Query_animal(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6453  	defer func() {
  6454  		if r := recover(); r != nil {
  6455  			ec.Error(ctx, ec.Recover(ctx, r))
  6456  			ret = graphql.Null
  6457  		}
  6458  	}()
  6459  	fc := &graphql.FieldContext{
  6460  		Object:   "Query",
  6461  		Field:    field,
  6462  		Args:     nil,
  6463  		IsMethod: true,
  6464  	}
  6465  
  6466  	ctx = graphql.WithFieldContext(ctx, fc)
  6467  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6468  		directive0 := func(rctx context.Context) (interface{}, error) {
  6469  			ctx = rctx // use context from middleware stack in children
  6470  			return ec.resolvers.Query().Animal(rctx)
  6471  		}
  6472  		directive1 := func(ctx context.Context) (interface{}, error) {
  6473  			if ec.directives.MakeTypedNil == nil {
  6474  				return nil, errors.New("directive makeTypedNil is not implemented")
  6475  			}
  6476  			return ec.directives.MakeTypedNil(ctx, nil, directive0)
  6477  		}
  6478  
  6479  		tmp, err := directive1(rctx)
  6480  		if err != nil {
  6481  			return nil, err
  6482  		}
  6483  		if tmp == nil {
  6484  			return nil, nil
  6485  		}
  6486  		if data, ok := tmp.(Animal); ok {
  6487  			return data, nil
  6488  		}
  6489  		return nil, fmt.Errorf(`unexpected type %T from directive, should be git.sr.ht/~sircmpwn/gqlgen/codegen/testserver.Animal`, tmp)
  6490  	})
  6491  
  6492  	if resTmp == nil {
  6493  		return graphql.Null
  6494  	}
  6495  	res := resTmp.(Animal)
  6496  	fc.Result = res
  6497  	return ec.marshalOAnimal2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐAnimal(ctx, field.Selections, res)
  6498  }
  6499  
  6500  func (ec *executionContext) _Query_notAnInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6501  	defer func() {
  6502  		if r := recover(); r != nil {
  6503  			ec.Error(ctx, ec.Recover(ctx, r))
  6504  			ret = graphql.Null
  6505  		}
  6506  	}()
  6507  	fc := &graphql.FieldContext{
  6508  		Object:   "Query",
  6509  		Field:    field,
  6510  		Args:     nil,
  6511  		IsMethod: true,
  6512  	}
  6513  
  6514  	ctx = graphql.WithFieldContext(ctx, fc)
  6515  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6516  		ctx = rctx // use context from middleware stack in children
  6517  		return ec.resolvers.Query().NotAnInterface(rctx)
  6518  	})
  6519  
  6520  	if resTmp == nil {
  6521  		return graphql.Null
  6522  	}
  6523  	res := resTmp.(BackedByInterface)
  6524  	fc.Result = res
  6525  	return ec.marshalOBackedByInterface2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐBackedByInterface(ctx, field.Selections, res)
  6526  }
  6527  
  6528  func (ec *executionContext) _Query_issue896a(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6529  	defer func() {
  6530  		if r := recover(); r != nil {
  6531  			ec.Error(ctx, ec.Recover(ctx, r))
  6532  			ret = graphql.Null
  6533  		}
  6534  	}()
  6535  	fc := &graphql.FieldContext{
  6536  		Object:   "Query",
  6537  		Field:    field,
  6538  		Args:     nil,
  6539  		IsMethod: true,
  6540  	}
  6541  
  6542  	ctx = graphql.WithFieldContext(ctx, fc)
  6543  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6544  		ctx = rctx // use context from middleware stack in children
  6545  		return ec.resolvers.Query().Issue896a(rctx)
  6546  	})
  6547  
  6548  	if resTmp == nil {
  6549  		return graphql.Null
  6550  	}
  6551  	res := resTmp.([]*CheckIssue896)
  6552  	fc.Result = res
  6553  	return ec.marshalOCheckIssue8962ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896ᚄ(ctx, field.Selections, res)
  6554  }
  6555  
  6556  func (ec *executionContext) _Query_mapStringInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6557  	defer func() {
  6558  		if r := recover(); r != nil {
  6559  			ec.Error(ctx, ec.Recover(ctx, r))
  6560  			ret = graphql.Null
  6561  		}
  6562  	}()
  6563  	fc := &graphql.FieldContext{
  6564  		Object:   "Query",
  6565  		Field:    field,
  6566  		Args:     nil,
  6567  		IsMethod: true,
  6568  	}
  6569  
  6570  	ctx = graphql.WithFieldContext(ctx, fc)
  6571  	rawArgs := field.ArgumentMap(ec.Variables)
  6572  	args, err := ec.field_Query_mapStringInterface_args(ctx, rawArgs)
  6573  	if err != nil {
  6574  		ec.Error(ctx, err)
  6575  		return graphql.Null
  6576  	}
  6577  	fc.Args = args
  6578  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6579  		ctx = rctx // use context from middleware stack in children
  6580  		return ec.resolvers.Query().MapStringInterface(rctx, args["in"].(map[string]interface{}))
  6581  	})
  6582  
  6583  	if resTmp == nil {
  6584  		return graphql.Null
  6585  	}
  6586  	res := resTmp.(map[string]interface{})
  6587  	fc.Result = res
  6588  	return ec.marshalOMapStringInterfaceType2map(ctx, field.Selections, res)
  6589  }
  6590  
  6591  func (ec *executionContext) _Query_mapNestedStringInterface(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6592  	defer func() {
  6593  		if r := recover(); r != nil {
  6594  			ec.Error(ctx, ec.Recover(ctx, r))
  6595  			ret = graphql.Null
  6596  		}
  6597  	}()
  6598  	fc := &graphql.FieldContext{
  6599  		Object:   "Query",
  6600  		Field:    field,
  6601  		Args:     nil,
  6602  		IsMethod: true,
  6603  	}
  6604  
  6605  	ctx = graphql.WithFieldContext(ctx, fc)
  6606  	rawArgs := field.ArgumentMap(ec.Variables)
  6607  	args, err := ec.field_Query_mapNestedStringInterface_args(ctx, rawArgs)
  6608  	if err != nil {
  6609  		ec.Error(ctx, err)
  6610  		return graphql.Null
  6611  	}
  6612  	fc.Args = args
  6613  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6614  		ctx = rctx // use context from middleware stack in children
  6615  		return ec.resolvers.Query().MapNestedStringInterface(rctx, args["in"].(*NestedMapInput))
  6616  	})
  6617  
  6618  	if resTmp == nil {
  6619  		return graphql.Null
  6620  	}
  6621  	res := resTmp.(map[string]interface{})
  6622  	fc.Result = res
  6623  	return ec.marshalOMapStringInterfaceType2map(ctx, field.Selections, res)
  6624  }
  6625  
  6626  func (ec *executionContext) _Query_errorBubble(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6627  	defer func() {
  6628  		if r := recover(); r != nil {
  6629  			ec.Error(ctx, ec.Recover(ctx, r))
  6630  			ret = graphql.Null
  6631  		}
  6632  	}()
  6633  	fc := &graphql.FieldContext{
  6634  		Object:   "Query",
  6635  		Field:    field,
  6636  		Args:     nil,
  6637  		IsMethod: true,
  6638  	}
  6639  
  6640  	ctx = graphql.WithFieldContext(ctx, fc)
  6641  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6642  		ctx = rctx // use context from middleware stack in children
  6643  		return ec.resolvers.Query().ErrorBubble(rctx)
  6644  	})
  6645  
  6646  	if resTmp == nil {
  6647  		return graphql.Null
  6648  	}
  6649  	res := resTmp.(*Error)
  6650  	fc.Result = res
  6651  	return ec.marshalOError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx, field.Selections, res)
  6652  }
  6653  
  6654  func (ec *executionContext) _Query_errors(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6655  	defer func() {
  6656  		if r := recover(); r != nil {
  6657  			ec.Error(ctx, ec.Recover(ctx, r))
  6658  			ret = graphql.Null
  6659  		}
  6660  	}()
  6661  	fc := &graphql.FieldContext{
  6662  		Object:   "Query",
  6663  		Field:    field,
  6664  		Args:     nil,
  6665  		IsMethod: true,
  6666  	}
  6667  
  6668  	ctx = graphql.WithFieldContext(ctx, fc)
  6669  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6670  		ctx = rctx // use context from middleware stack in children
  6671  		return ec.resolvers.Query().Errors(rctx)
  6672  	})
  6673  
  6674  	if resTmp == nil {
  6675  		return graphql.Null
  6676  	}
  6677  	res := resTmp.(*Errors)
  6678  	fc.Result = res
  6679  	return ec.marshalOErrors2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐErrors(ctx, field.Selections, res)
  6680  }
  6681  
  6682  func (ec *executionContext) _Query_valid(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6683  	defer func() {
  6684  		if r := recover(); r != nil {
  6685  			ec.Error(ctx, ec.Recover(ctx, r))
  6686  			ret = graphql.Null
  6687  		}
  6688  	}()
  6689  	fc := &graphql.FieldContext{
  6690  		Object:   "Query",
  6691  		Field:    field,
  6692  		Args:     nil,
  6693  		IsMethod: true,
  6694  	}
  6695  
  6696  	ctx = graphql.WithFieldContext(ctx, fc)
  6697  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6698  		ctx = rctx // use context from middleware stack in children
  6699  		return ec.resolvers.Query().Valid(rctx)
  6700  	})
  6701  
  6702  	if resTmp == nil {
  6703  		if !graphql.HasFieldError(ctx, fc) {
  6704  			ec.Errorf(ctx, "must not be null")
  6705  		}
  6706  		return graphql.Null
  6707  	}
  6708  	res := resTmp.(string)
  6709  	fc.Result = res
  6710  	return ec.marshalNString2string(ctx, field.Selections, res)
  6711  }
  6712  
  6713  func (ec *executionContext) _Query_panics(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6714  	defer func() {
  6715  		if r := recover(); r != nil {
  6716  			ec.Error(ctx, ec.Recover(ctx, r))
  6717  			ret = graphql.Null
  6718  		}
  6719  	}()
  6720  	fc := &graphql.FieldContext{
  6721  		Object:   "Query",
  6722  		Field:    field,
  6723  		Args:     nil,
  6724  		IsMethod: true,
  6725  	}
  6726  
  6727  	ctx = graphql.WithFieldContext(ctx, fc)
  6728  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6729  		ctx = rctx // use context from middleware stack in children
  6730  		return ec.resolvers.Query().Panics(rctx)
  6731  	})
  6732  
  6733  	if resTmp == nil {
  6734  		return graphql.Null
  6735  	}
  6736  	res := resTmp.(*Panics)
  6737  	fc.Result = res
  6738  	return ec.marshalOPanics2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPanics(ctx, field.Selections, res)
  6739  }
  6740  
  6741  func (ec *executionContext) _Query_primitiveObject(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6742  	defer func() {
  6743  		if r := recover(); r != nil {
  6744  			ec.Error(ctx, ec.Recover(ctx, r))
  6745  			ret = graphql.Null
  6746  		}
  6747  	}()
  6748  	fc := &graphql.FieldContext{
  6749  		Object:   "Query",
  6750  		Field:    field,
  6751  		Args:     nil,
  6752  		IsMethod: true,
  6753  	}
  6754  
  6755  	ctx = graphql.WithFieldContext(ctx, fc)
  6756  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6757  		ctx = rctx // use context from middleware stack in children
  6758  		return ec.resolvers.Query().PrimitiveObject(rctx)
  6759  	})
  6760  
  6761  	if resTmp == nil {
  6762  		if !graphql.HasFieldError(ctx, fc) {
  6763  			ec.Errorf(ctx, "must not be null")
  6764  		}
  6765  		return graphql.Null
  6766  	}
  6767  	res := resTmp.([]Primitive)
  6768  	fc.Result = res
  6769  	return ec.marshalNPrimitive2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitiveᚄ(ctx, field.Selections, res)
  6770  }
  6771  
  6772  func (ec *executionContext) _Query_primitiveStringObject(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6773  	defer func() {
  6774  		if r := recover(); r != nil {
  6775  			ec.Error(ctx, ec.Recover(ctx, r))
  6776  			ret = graphql.Null
  6777  		}
  6778  	}()
  6779  	fc := &graphql.FieldContext{
  6780  		Object:   "Query",
  6781  		Field:    field,
  6782  		Args:     nil,
  6783  		IsMethod: true,
  6784  	}
  6785  
  6786  	ctx = graphql.WithFieldContext(ctx, fc)
  6787  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6788  		ctx = rctx // use context from middleware stack in children
  6789  		return ec.resolvers.Query().PrimitiveStringObject(rctx)
  6790  	})
  6791  
  6792  	if resTmp == nil {
  6793  		if !graphql.HasFieldError(ctx, fc) {
  6794  			ec.Errorf(ctx, "must not be null")
  6795  		}
  6796  		return graphql.Null
  6797  	}
  6798  	res := resTmp.([]PrimitiveString)
  6799  	fc.Result = res
  6800  	return ec.marshalNPrimitiveString2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitiveStringᚄ(ctx, field.Selections, res)
  6801  }
  6802  
  6803  func (ec *executionContext) _Query_defaultScalar(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6804  	defer func() {
  6805  		if r := recover(); r != nil {
  6806  			ec.Error(ctx, ec.Recover(ctx, r))
  6807  			ret = graphql.Null
  6808  		}
  6809  	}()
  6810  	fc := &graphql.FieldContext{
  6811  		Object:   "Query",
  6812  		Field:    field,
  6813  		Args:     nil,
  6814  		IsMethod: true,
  6815  	}
  6816  
  6817  	ctx = graphql.WithFieldContext(ctx, fc)
  6818  	rawArgs := field.ArgumentMap(ec.Variables)
  6819  	args, err := ec.field_Query_defaultScalar_args(ctx, rawArgs)
  6820  	if err != nil {
  6821  		ec.Error(ctx, err)
  6822  		return graphql.Null
  6823  	}
  6824  	fc.Args = args
  6825  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6826  		ctx = rctx // use context from middleware stack in children
  6827  		return ec.resolvers.Query().DefaultScalar(rctx, args["arg"].(string))
  6828  	})
  6829  
  6830  	if resTmp == nil {
  6831  		if !graphql.HasFieldError(ctx, fc) {
  6832  			ec.Errorf(ctx, "must not be null")
  6833  		}
  6834  		return graphql.Null
  6835  	}
  6836  	res := resTmp.(string)
  6837  	fc.Result = res
  6838  	return ec.marshalNDefaultScalarImplementation2string(ctx, field.Selections, res)
  6839  }
  6840  
  6841  func (ec *executionContext) _Query_slices(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6842  	defer func() {
  6843  		if r := recover(); r != nil {
  6844  			ec.Error(ctx, ec.Recover(ctx, r))
  6845  			ret = graphql.Null
  6846  		}
  6847  	}()
  6848  	fc := &graphql.FieldContext{
  6849  		Object:   "Query",
  6850  		Field:    field,
  6851  		Args:     nil,
  6852  		IsMethod: true,
  6853  	}
  6854  
  6855  	ctx = graphql.WithFieldContext(ctx, fc)
  6856  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6857  		ctx = rctx // use context from middleware stack in children
  6858  		return ec.resolvers.Query().Slices(rctx)
  6859  	})
  6860  
  6861  	if resTmp == nil {
  6862  		return graphql.Null
  6863  	}
  6864  	res := resTmp.(*Slices)
  6865  	fc.Result = res
  6866  	return ec.marshalOSlices2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐSlices(ctx, field.Selections, res)
  6867  }
  6868  
  6869  func (ec *executionContext) _Query_scalarSlice(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6870  	defer func() {
  6871  		if r := recover(); r != nil {
  6872  			ec.Error(ctx, ec.Recover(ctx, r))
  6873  			ret = graphql.Null
  6874  		}
  6875  	}()
  6876  	fc := &graphql.FieldContext{
  6877  		Object:   "Query",
  6878  		Field:    field,
  6879  		Args:     nil,
  6880  		IsMethod: true,
  6881  	}
  6882  
  6883  	ctx = graphql.WithFieldContext(ctx, fc)
  6884  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6885  		ctx = rctx // use context from middleware stack in children
  6886  		return ec.resolvers.Query().ScalarSlice(rctx)
  6887  	})
  6888  
  6889  	if resTmp == nil {
  6890  		if !graphql.HasFieldError(ctx, fc) {
  6891  			ec.Errorf(ctx, "must not be null")
  6892  		}
  6893  		return graphql.Null
  6894  	}
  6895  	res := resTmp.([]byte)
  6896  	fc.Result = res
  6897  	return ec.marshalNBytes2ᚕbyte(ctx, field.Selections, res)
  6898  }
  6899  
  6900  func (ec *executionContext) _Query_fallback(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6901  	defer func() {
  6902  		if r := recover(); r != nil {
  6903  			ec.Error(ctx, ec.Recover(ctx, r))
  6904  			ret = graphql.Null
  6905  		}
  6906  	}()
  6907  	fc := &graphql.FieldContext{
  6908  		Object:   "Query",
  6909  		Field:    field,
  6910  		Args:     nil,
  6911  		IsMethod: true,
  6912  	}
  6913  
  6914  	ctx = graphql.WithFieldContext(ctx, fc)
  6915  	rawArgs := field.ArgumentMap(ec.Variables)
  6916  	args, err := ec.field_Query_fallback_args(ctx, rawArgs)
  6917  	if err != nil {
  6918  		ec.Error(ctx, err)
  6919  		return graphql.Null
  6920  	}
  6921  	fc.Args = args
  6922  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6923  		ctx = rctx // use context from middleware stack in children
  6924  		return ec.resolvers.Query().Fallback(rctx, args["arg"].(FallbackToStringEncoding))
  6925  	})
  6926  
  6927  	if resTmp == nil {
  6928  		if !graphql.HasFieldError(ctx, fc) {
  6929  			ec.Errorf(ctx, "must not be null")
  6930  		}
  6931  		return graphql.Null
  6932  	}
  6933  	res := resTmp.(FallbackToStringEncoding)
  6934  	fc.Result = res
  6935  	return ec.marshalNFallbackToStringEncoding2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐFallbackToStringEncoding(ctx, field.Selections, res)
  6936  }
  6937  
  6938  func (ec *executionContext) _Query_optionalUnion(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6939  	defer func() {
  6940  		if r := recover(); r != nil {
  6941  			ec.Error(ctx, ec.Recover(ctx, r))
  6942  			ret = graphql.Null
  6943  		}
  6944  	}()
  6945  	fc := &graphql.FieldContext{
  6946  		Object:   "Query",
  6947  		Field:    field,
  6948  		Args:     nil,
  6949  		IsMethod: true,
  6950  	}
  6951  
  6952  	ctx = graphql.WithFieldContext(ctx, fc)
  6953  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6954  		ctx = rctx // use context from middleware stack in children
  6955  		return ec.resolvers.Query().OptionalUnion(rctx)
  6956  	})
  6957  
  6958  	if resTmp == nil {
  6959  		return graphql.Null
  6960  	}
  6961  	res := resTmp.(TestUnion)
  6962  	fc.Result = res
  6963  	return ec.marshalOTestUnion2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐTestUnion(ctx, field.Selections, res)
  6964  }
  6965  
  6966  func (ec *executionContext) _Query_validType(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6967  	defer func() {
  6968  		if r := recover(); r != nil {
  6969  			ec.Error(ctx, ec.Recover(ctx, r))
  6970  			ret = graphql.Null
  6971  		}
  6972  	}()
  6973  	fc := &graphql.FieldContext{
  6974  		Object:   "Query",
  6975  		Field:    field,
  6976  		Args:     nil,
  6977  		IsMethod: true,
  6978  	}
  6979  
  6980  	ctx = graphql.WithFieldContext(ctx, fc)
  6981  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  6982  		ctx = rctx // use context from middleware stack in children
  6983  		return ec.resolvers.Query().ValidType(rctx)
  6984  	})
  6985  
  6986  	if resTmp == nil {
  6987  		return graphql.Null
  6988  	}
  6989  	res := resTmp.(*ValidType)
  6990  	fc.Result = res
  6991  	return ec.marshalOValidType2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidType(ctx, field.Selections, res)
  6992  }
  6993  
  6994  func (ec *executionContext) _Query_wrappedStruct(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  6995  	defer func() {
  6996  		if r := recover(); r != nil {
  6997  			ec.Error(ctx, ec.Recover(ctx, r))
  6998  			ret = graphql.Null
  6999  		}
  7000  	}()
  7001  	fc := &graphql.FieldContext{
  7002  		Object:   "Query",
  7003  		Field:    field,
  7004  		Args:     nil,
  7005  		IsMethod: true,
  7006  	}
  7007  
  7008  	ctx = graphql.WithFieldContext(ctx, fc)
  7009  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7010  		ctx = rctx // use context from middleware stack in children
  7011  		return ec.resolvers.Query().WrappedStruct(rctx)
  7012  	})
  7013  
  7014  	if resTmp == nil {
  7015  		if !graphql.HasFieldError(ctx, fc) {
  7016  			ec.Errorf(ctx, "must not be null")
  7017  		}
  7018  		return graphql.Null
  7019  	}
  7020  	res := resTmp.(*WrappedStruct)
  7021  	fc.Result = res
  7022  	return ec.marshalNWrappedStruct2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐWrappedStruct(ctx, field.Selections, res)
  7023  }
  7024  
  7025  func (ec *executionContext) _Query_wrappedScalar(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  7026  	defer func() {
  7027  		if r := recover(); r != nil {
  7028  			ec.Error(ctx, ec.Recover(ctx, r))
  7029  			ret = graphql.Null
  7030  		}
  7031  	}()
  7032  	fc := &graphql.FieldContext{
  7033  		Object:   "Query",
  7034  		Field:    field,
  7035  		Args:     nil,
  7036  		IsMethod: true,
  7037  	}
  7038  
  7039  	ctx = graphql.WithFieldContext(ctx, fc)
  7040  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7041  		ctx = rctx // use context from middleware stack in children
  7042  		return ec.resolvers.Query().WrappedScalar(rctx)
  7043  	})
  7044  
  7045  	if resTmp == nil {
  7046  		if !graphql.HasFieldError(ctx, fc) {
  7047  			ec.Errorf(ctx, "must not be null")
  7048  		}
  7049  		return graphql.Null
  7050  	}
  7051  	res := resTmp.(WrappedScalar)
  7052  	fc.Result = res
  7053  	return ec.marshalNWrappedScalar2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐWrappedScalar(ctx, field.Selections, res)
  7054  }
  7055  
  7056  func (ec *executionContext) _Query___type(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  7057  	defer func() {
  7058  		if r := recover(); r != nil {
  7059  			ec.Error(ctx, ec.Recover(ctx, r))
  7060  			ret = graphql.Null
  7061  		}
  7062  	}()
  7063  	fc := &graphql.FieldContext{
  7064  		Object:   "Query",
  7065  		Field:    field,
  7066  		Args:     nil,
  7067  		IsMethod: true,
  7068  	}
  7069  
  7070  	ctx = graphql.WithFieldContext(ctx, fc)
  7071  	rawArgs := field.ArgumentMap(ec.Variables)
  7072  	args, err := ec.field_Query___type_args(ctx, rawArgs)
  7073  	if err != nil {
  7074  		ec.Error(ctx, err)
  7075  		return graphql.Null
  7076  	}
  7077  	fc.Args = args
  7078  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7079  		ctx = rctx // use context from middleware stack in children
  7080  		return ec.introspectType(args["name"].(string))
  7081  	})
  7082  
  7083  	if resTmp == nil {
  7084  		return graphql.Null
  7085  	}
  7086  	res := resTmp.(*introspection.Type)
  7087  	fc.Result = res
  7088  	return ec.marshalO__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  7089  }
  7090  
  7091  func (ec *executionContext) _Query___schema(ctx context.Context, field graphql.CollectedField) (ret graphql.Marshaler) {
  7092  	defer func() {
  7093  		if r := recover(); r != nil {
  7094  			ec.Error(ctx, ec.Recover(ctx, r))
  7095  			ret = graphql.Null
  7096  		}
  7097  	}()
  7098  	fc := &graphql.FieldContext{
  7099  		Object:   "Query",
  7100  		Field:    field,
  7101  		Args:     nil,
  7102  		IsMethod: true,
  7103  	}
  7104  
  7105  	ctx = graphql.WithFieldContext(ctx, fc)
  7106  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7107  		ctx = rctx // use context from middleware stack in children
  7108  		return ec.introspectSchema()
  7109  	})
  7110  
  7111  	if resTmp == nil {
  7112  		return graphql.Null
  7113  	}
  7114  	res := resTmp.(*introspection.Schema)
  7115  	fc.Result = res
  7116  	return ec.marshalO__Schema2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐSchema(ctx, field.Selections, res)
  7117  }
  7118  
  7119  func (ec *executionContext) _Rectangle_length(ctx context.Context, field graphql.CollectedField, obj *Rectangle) (ret graphql.Marshaler) {
  7120  	defer func() {
  7121  		if r := recover(); r != nil {
  7122  			ec.Error(ctx, ec.Recover(ctx, r))
  7123  			ret = graphql.Null
  7124  		}
  7125  	}()
  7126  	fc := &graphql.FieldContext{
  7127  		Object:   "Rectangle",
  7128  		Field:    field,
  7129  		Args:     nil,
  7130  		IsMethod: false,
  7131  	}
  7132  
  7133  	ctx = graphql.WithFieldContext(ctx, fc)
  7134  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7135  		ctx = rctx // use context from middleware stack in children
  7136  		return obj.Length, nil
  7137  	})
  7138  
  7139  	if resTmp == nil {
  7140  		return graphql.Null
  7141  	}
  7142  	res := resTmp.(float64)
  7143  	fc.Result = res
  7144  	return ec.marshalOFloat2float64(ctx, field.Selections, res)
  7145  }
  7146  
  7147  func (ec *executionContext) _Rectangle_width(ctx context.Context, field graphql.CollectedField, obj *Rectangle) (ret graphql.Marshaler) {
  7148  	defer func() {
  7149  		if r := recover(); r != nil {
  7150  			ec.Error(ctx, ec.Recover(ctx, r))
  7151  			ret = graphql.Null
  7152  		}
  7153  	}()
  7154  	fc := &graphql.FieldContext{
  7155  		Object:   "Rectangle",
  7156  		Field:    field,
  7157  		Args:     nil,
  7158  		IsMethod: false,
  7159  	}
  7160  
  7161  	ctx = graphql.WithFieldContext(ctx, fc)
  7162  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7163  		ctx = rctx // use context from middleware stack in children
  7164  		return obj.Width, nil
  7165  	})
  7166  
  7167  	if resTmp == nil {
  7168  		return graphql.Null
  7169  	}
  7170  	res := resTmp.(float64)
  7171  	fc.Result = res
  7172  	return ec.marshalOFloat2float64(ctx, field.Selections, res)
  7173  }
  7174  
  7175  func (ec *executionContext) _Rectangle_area(ctx context.Context, field graphql.CollectedField, obj *Rectangle) (ret graphql.Marshaler) {
  7176  	defer func() {
  7177  		if r := recover(); r != nil {
  7178  			ec.Error(ctx, ec.Recover(ctx, r))
  7179  			ret = graphql.Null
  7180  		}
  7181  	}()
  7182  	fc := &graphql.FieldContext{
  7183  		Object:   "Rectangle",
  7184  		Field:    field,
  7185  		Args:     nil,
  7186  		IsMethod: true,
  7187  	}
  7188  
  7189  	ctx = graphql.WithFieldContext(ctx, fc)
  7190  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7191  		ctx = rctx // use context from middleware stack in children
  7192  		return obj.Area(), nil
  7193  	})
  7194  
  7195  	if resTmp == nil {
  7196  		return graphql.Null
  7197  	}
  7198  	res := resTmp.(float64)
  7199  	fc.Result = res
  7200  	return ec.marshalOFloat2float64(ctx, field.Selections, res)
  7201  }
  7202  
  7203  func (ec *executionContext) _Slices_test1(ctx context.Context, field graphql.CollectedField, obj *Slices) (ret graphql.Marshaler) {
  7204  	defer func() {
  7205  		if r := recover(); r != nil {
  7206  			ec.Error(ctx, ec.Recover(ctx, r))
  7207  			ret = graphql.Null
  7208  		}
  7209  	}()
  7210  	fc := &graphql.FieldContext{
  7211  		Object:   "Slices",
  7212  		Field:    field,
  7213  		Args:     nil,
  7214  		IsMethod: false,
  7215  	}
  7216  
  7217  	ctx = graphql.WithFieldContext(ctx, fc)
  7218  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7219  		ctx = rctx // use context from middleware stack in children
  7220  		return obj.Test1, nil
  7221  	})
  7222  
  7223  	if resTmp == nil {
  7224  		return graphql.Null
  7225  	}
  7226  	res := resTmp.([]*string)
  7227  	fc.Result = res
  7228  	return ec.marshalOString2ᚕᚖstring(ctx, field.Selections, res)
  7229  }
  7230  
  7231  func (ec *executionContext) _Slices_test2(ctx context.Context, field graphql.CollectedField, obj *Slices) (ret graphql.Marshaler) {
  7232  	defer func() {
  7233  		if r := recover(); r != nil {
  7234  			ec.Error(ctx, ec.Recover(ctx, r))
  7235  			ret = graphql.Null
  7236  		}
  7237  	}()
  7238  	fc := &graphql.FieldContext{
  7239  		Object:   "Slices",
  7240  		Field:    field,
  7241  		Args:     nil,
  7242  		IsMethod: false,
  7243  	}
  7244  
  7245  	ctx = graphql.WithFieldContext(ctx, fc)
  7246  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7247  		ctx = rctx // use context from middleware stack in children
  7248  		return obj.Test2, nil
  7249  	})
  7250  
  7251  	if resTmp == nil {
  7252  		return graphql.Null
  7253  	}
  7254  	res := resTmp.([]string)
  7255  	fc.Result = res
  7256  	return ec.marshalOString2ᚕstringᚄ(ctx, field.Selections, res)
  7257  }
  7258  
  7259  func (ec *executionContext) _Slices_test3(ctx context.Context, field graphql.CollectedField, obj *Slices) (ret graphql.Marshaler) {
  7260  	defer func() {
  7261  		if r := recover(); r != nil {
  7262  			ec.Error(ctx, ec.Recover(ctx, r))
  7263  			ret = graphql.Null
  7264  		}
  7265  	}()
  7266  	fc := &graphql.FieldContext{
  7267  		Object:   "Slices",
  7268  		Field:    field,
  7269  		Args:     nil,
  7270  		IsMethod: false,
  7271  	}
  7272  
  7273  	ctx = graphql.WithFieldContext(ctx, fc)
  7274  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7275  		ctx = rctx // use context from middleware stack in children
  7276  		return obj.Test3, nil
  7277  	})
  7278  
  7279  	if resTmp == nil {
  7280  		if !graphql.HasFieldError(ctx, fc) {
  7281  			ec.Errorf(ctx, "must not be null")
  7282  		}
  7283  		return graphql.Null
  7284  	}
  7285  	res := resTmp.([]*string)
  7286  	fc.Result = res
  7287  	return ec.marshalNString2ᚕᚖstring(ctx, field.Selections, res)
  7288  }
  7289  
  7290  func (ec *executionContext) _Slices_test4(ctx context.Context, field graphql.CollectedField, obj *Slices) (ret graphql.Marshaler) {
  7291  	defer func() {
  7292  		if r := recover(); r != nil {
  7293  			ec.Error(ctx, ec.Recover(ctx, r))
  7294  			ret = graphql.Null
  7295  		}
  7296  	}()
  7297  	fc := &graphql.FieldContext{
  7298  		Object:   "Slices",
  7299  		Field:    field,
  7300  		Args:     nil,
  7301  		IsMethod: false,
  7302  	}
  7303  
  7304  	ctx = graphql.WithFieldContext(ctx, fc)
  7305  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7306  		ctx = rctx // use context from middleware stack in children
  7307  		return obj.Test4, nil
  7308  	})
  7309  
  7310  	if resTmp == nil {
  7311  		if !graphql.HasFieldError(ctx, fc) {
  7312  			ec.Errorf(ctx, "must not be null")
  7313  		}
  7314  		return graphql.Null
  7315  	}
  7316  	res := resTmp.([]string)
  7317  	fc.Result = res
  7318  	return ec.marshalNString2ᚕstringᚄ(ctx, field.Selections, res)
  7319  }
  7320  
  7321  func (ec *executionContext) _Subscription_updated(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7322  	defer func() {
  7323  		if r := recover(); r != nil {
  7324  			ec.Error(ctx, ec.Recover(ctx, r))
  7325  			ret = nil
  7326  		}
  7327  	}()
  7328  	fc := &graphql.FieldContext{
  7329  		Object:   "Subscription",
  7330  		Field:    field,
  7331  		Args:     nil,
  7332  		IsMethod: true,
  7333  	}
  7334  
  7335  	ctx = graphql.WithFieldContext(ctx, fc)
  7336  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7337  		ctx = rctx // use context from middleware stack in children
  7338  		return ec.resolvers.Subscription().Updated(rctx)
  7339  	})
  7340  
  7341  	if resTmp == nil {
  7342  		if !graphql.HasFieldError(ctx, fc) {
  7343  			ec.Errorf(ctx, "must not be null")
  7344  		}
  7345  		return nil
  7346  	}
  7347  	return func() graphql.Marshaler {
  7348  		res, ok := <-resTmp.(<-chan string)
  7349  		if !ok {
  7350  			return nil
  7351  		}
  7352  		return graphql.WriterFunc(func(w io.Writer) {
  7353  			w.Write([]byte{'{'})
  7354  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7355  			w.Write([]byte{':'})
  7356  			ec.marshalNString2string(ctx, field.Selections, res).MarshalGQL(w)
  7357  			w.Write([]byte{'}'})
  7358  		})
  7359  	}
  7360  }
  7361  
  7362  func (ec *executionContext) _Subscription_initPayload(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7363  	defer func() {
  7364  		if r := recover(); r != nil {
  7365  			ec.Error(ctx, ec.Recover(ctx, r))
  7366  			ret = nil
  7367  		}
  7368  	}()
  7369  	fc := &graphql.FieldContext{
  7370  		Object:   "Subscription",
  7371  		Field:    field,
  7372  		Args:     nil,
  7373  		IsMethod: true,
  7374  	}
  7375  
  7376  	ctx = graphql.WithFieldContext(ctx, fc)
  7377  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7378  		ctx = rctx // use context from middleware stack in children
  7379  		return ec.resolvers.Subscription().InitPayload(rctx)
  7380  	})
  7381  
  7382  	if resTmp == nil {
  7383  		if !graphql.HasFieldError(ctx, fc) {
  7384  			ec.Errorf(ctx, "must not be null")
  7385  		}
  7386  		return nil
  7387  	}
  7388  	return func() graphql.Marshaler {
  7389  		res, ok := <-resTmp.(<-chan string)
  7390  		if !ok {
  7391  			return nil
  7392  		}
  7393  		return graphql.WriterFunc(func(w io.Writer) {
  7394  			w.Write([]byte{'{'})
  7395  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7396  			w.Write([]byte{':'})
  7397  			ec.marshalNString2string(ctx, field.Selections, res).MarshalGQL(w)
  7398  			w.Write([]byte{'}'})
  7399  		})
  7400  	}
  7401  }
  7402  
  7403  func (ec *executionContext) _Subscription_directiveArg(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7404  	defer func() {
  7405  		if r := recover(); r != nil {
  7406  			ec.Error(ctx, ec.Recover(ctx, r))
  7407  			ret = nil
  7408  		}
  7409  	}()
  7410  	fc := &graphql.FieldContext{
  7411  		Object:   "Subscription",
  7412  		Field:    field,
  7413  		Args:     nil,
  7414  		IsMethod: true,
  7415  	}
  7416  
  7417  	ctx = graphql.WithFieldContext(ctx, fc)
  7418  	rawArgs := field.ArgumentMap(ec.Variables)
  7419  	args, err := ec.field_Subscription_directiveArg_args(ctx, rawArgs)
  7420  	if err != nil {
  7421  		ec.Error(ctx, err)
  7422  		return nil
  7423  	}
  7424  	fc.Args = args
  7425  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7426  		ctx = rctx // use context from middleware stack in children
  7427  		return ec.resolvers.Subscription().DirectiveArg(rctx, args["arg"].(string))
  7428  	})
  7429  
  7430  	if resTmp == nil {
  7431  		return nil
  7432  	}
  7433  	return func() graphql.Marshaler {
  7434  		res, ok := <-resTmp.(<-chan *string)
  7435  		if !ok {
  7436  			return nil
  7437  		}
  7438  		return graphql.WriterFunc(func(w io.Writer) {
  7439  			w.Write([]byte{'{'})
  7440  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7441  			w.Write([]byte{':'})
  7442  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  7443  			w.Write([]byte{'}'})
  7444  		})
  7445  	}
  7446  }
  7447  
  7448  func (ec *executionContext) _Subscription_directiveNullableArg(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7449  	defer func() {
  7450  		if r := recover(); r != nil {
  7451  			ec.Error(ctx, ec.Recover(ctx, r))
  7452  			ret = nil
  7453  		}
  7454  	}()
  7455  	fc := &graphql.FieldContext{
  7456  		Object:   "Subscription",
  7457  		Field:    field,
  7458  		Args:     nil,
  7459  		IsMethod: true,
  7460  	}
  7461  
  7462  	ctx = graphql.WithFieldContext(ctx, fc)
  7463  	rawArgs := field.ArgumentMap(ec.Variables)
  7464  	args, err := ec.field_Subscription_directiveNullableArg_args(ctx, rawArgs)
  7465  	if err != nil {
  7466  		ec.Error(ctx, err)
  7467  		return nil
  7468  	}
  7469  	fc.Args = args
  7470  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7471  		ctx = rctx // use context from middleware stack in children
  7472  		return ec.resolvers.Subscription().DirectiveNullableArg(rctx, args["arg"].(*int), args["arg2"].(*int), args["arg3"].(*string))
  7473  	})
  7474  
  7475  	if resTmp == nil {
  7476  		return nil
  7477  	}
  7478  	return func() graphql.Marshaler {
  7479  		res, ok := <-resTmp.(<-chan *string)
  7480  		if !ok {
  7481  			return nil
  7482  		}
  7483  		return graphql.WriterFunc(func(w io.Writer) {
  7484  			w.Write([]byte{'{'})
  7485  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7486  			w.Write([]byte{':'})
  7487  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  7488  			w.Write([]byte{'}'})
  7489  		})
  7490  	}
  7491  }
  7492  
  7493  func (ec *executionContext) _Subscription_directiveDouble(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7494  	defer func() {
  7495  		if r := recover(); r != nil {
  7496  			ec.Error(ctx, ec.Recover(ctx, r))
  7497  			ret = nil
  7498  		}
  7499  	}()
  7500  	fc := &graphql.FieldContext{
  7501  		Object:   "Subscription",
  7502  		Field:    field,
  7503  		Args:     nil,
  7504  		IsMethod: true,
  7505  	}
  7506  
  7507  	ctx = graphql.WithFieldContext(ctx, fc)
  7508  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7509  		directive0 := func(rctx context.Context) (interface{}, error) {
  7510  			ctx = rctx // use context from middleware stack in children
  7511  			return ec.resolvers.Subscription().DirectiveDouble(rctx)
  7512  		}
  7513  		directive1 := func(ctx context.Context) (interface{}, error) {
  7514  			if ec.directives.Directive1 == nil {
  7515  				return nil, errors.New("directive directive1 is not implemented")
  7516  			}
  7517  			return ec.directives.Directive1(ctx, nil, directive0)
  7518  		}
  7519  		directive2 := func(ctx context.Context) (interface{}, error) {
  7520  			if ec.directives.Directive2 == nil {
  7521  				return nil, errors.New("directive directive2 is not implemented")
  7522  			}
  7523  			return ec.directives.Directive2(ctx, nil, directive1)
  7524  		}
  7525  
  7526  		tmp, err := directive2(rctx)
  7527  		if err != nil {
  7528  			return nil, err
  7529  		}
  7530  		if tmp == nil {
  7531  			return nil, nil
  7532  		}
  7533  		if data, ok := tmp.(<-chan *string); ok {
  7534  			return data, nil
  7535  		}
  7536  		return nil, fmt.Errorf(`unexpected type %T from directive, should be <-chan *string`, tmp)
  7537  	})
  7538  
  7539  	if resTmp == nil {
  7540  		return nil
  7541  	}
  7542  	return func() graphql.Marshaler {
  7543  		res, ok := <-resTmp.(<-chan *string)
  7544  		if !ok {
  7545  			return nil
  7546  		}
  7547  		return graphql.WriterFunc(func(w io.Writer) {
  7548  			w.Write([]byte{'{'})
  7549  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7550  			w.Write([]byte{':'})
  7551  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  7552  			w.Write([]byte{'}'})
  7553  		})
  7554  	}
  7555  }
  7556  
  7557  func (ec *executionContext) _Subscription_directiveUnimplemented(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7558  	defer func() {
  7559  		if r := recover(); r != nil {
  7560  			ec.Error(ctx, ec.Recover(ctx, r))
  7561  			ret = nil
  7562  		}
  7563  	}()
  7564  	fc := &graphql.FieldContext{
  7565  		Object:   "Subscription",
  7566  		Field:    field,
  7567  		Args:     nil,
  7568  		IsMethod: true,
  7569  	}
  7570  
  7571  	ctx = graphql.WithFieldContext(ctx, fc)
  7572  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7573  		directive0 := func(rctx context.Context) (interface{}, error) {
  7574  			ctx = rctx // use context from middleware stack in children
  7575  			return ec.resolvers.Subscription().DirectiveUnimplemented(rctx)
  7576  		}
  7577  		directive1 := func(ctx context.Context) (interface{}, error) {
  7578  			if ec.directives.Unimplemented == nil {
  7579  				return nil, errors.New("directive unimplemented is not implemented")
  7580  			}
  7581  			return ec.directives.Unimplemented(ctx, nil, directive0)
  7582  		}
  7583  
  7584  		tmp, err := directive1(rctx)
  7585  		if err != nil {
  7586  			return nil, err
  7587  		}
  7588  		if tmp == nil {
  7589  			return nil, nil
  7590  		}
  7591  		if data, ok := tmp.(<-chan *string); ok {
  7592  			return data, nil
  7593  		}
  7594  		return nil, fmt.Errorf(`unexpected type %T from directive, should be <-chan *string`, tmp)
  7595  	})
  7596  
  7597  	if resTmp == nil {
  7598  		return nil
  7599  	}
  7600  	return func() graphql.Marshaler {
  7601  		res, ok := <-resTmp.(<-chan *string)
  7602  		if !ok {
  7603  			return nil
  7604  		}
  7605  		return graphql.WriterFunc(func(w io.Writer) {
  7606  			w.Write([]byte{'{'})
  7607  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7608  			w.Write([]byte{':'})
  7609  			ec.marshalOString2ᚖstring(ctx, field.Selections, res).MarshalGQL(w)
  7610  			w.Write([]byte{'}'})
  7611  		})
  7612  	}
  7613  }
  7614  
  7615  func (ec *executionContext) _Subscription_issue896b(ctx context.Context, field graphql.CollectedField) (ret func() graphql.Marshaler) {
  7616  	defer func() {
  7617  		if r := recover(); r != nil {
  7618  			ec.Error(ctx, ec.Recover(ctx, r))
  7619  			ret = nil
  7620  		}
  7621  	}()
  7622  	fc := &graphql.FieldContext{
  7623  		Object:   "Subscription",
  7624  		Field:    field,
  7625  		Args:     nil,
  7626  		IsMethod: true,
  7627  	}
  7628  
  7629  	ctx = graphql.WithFieldContext(ctx, fc)
  7630  	resTmp := ec._fieldMiddleware(ctx, nil, func(rctx context.Context) (interface{}, error) {
  7631  		ctx = rctx // use context from middleware stack in children
  7632  		return ec.resolvers.Subscription().Issue896b(rctx)
  7633  	})
  7634  
  7635  	if resTmp == nil {
  7636  		return nil
  7637  	}
  7638  	return func() graphql.Marshaler {
  7639  		res, ok := <-resTmp.(<-chan []*CheckIssue896)
  7640  		if !ok {
  7641  			return nil
  7642  		}
  7643  		return graphql.WriterFunc(func(w io.Writer) {
  7644  			w.Write([]byte{'{'})
  7645  			graphql.MarshalString(field.Alias).MarshalGQL(w)
  7646  			w.Write([]byte{':'})
  7647  			ec.marshalOCheckIssue8962ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx, field.Selections, res).MarshalGQL(w)
  7648  			w.Write([]byte{'}'})
  7649  		})
  7650  	}
  7651  }
  7652  
  7653  func (ec *executionContext) _User_id(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  7654  	defer func() {
  7655  		if r := recover(); r != nil {
  7656  			ec.Error(ctx, ec.Recover(ctx, r))
  7657  			ret = graphql.Null
  7658  		}
  7659  	}()
  7660  	fc := &graphql.FieldContext{
  7661  		Object:   "User",
  7662  		Field:    field,
  7663  		Args:     nil,
  7664  		IsMethod: false,
  7665  	}
  7666  
  7667  	ctx = graphql.WithFieldContext(ctx, fc)
  7668  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7669  		ctx = rctx // use context from middleware stack in children
  7670  		return obj.ID, nil
  7671  	})
  7672  
  7673  	if resTmp == nil {
  7674  		if !graphql.HasFieldError(ctx, fc) {
  7675  			ec.Errorf(ctx, "must not be null")
  7676  		}
  7677  		return graphql.Null
  7678  	}
  7679  	res := resTmp.(int)
  7680  	fc.Result = res
  7681  	return ec.marshalNInt2int(ctx, field.Selections, res)
  7682  }
  7683  
  7684  func (ec *executionContext) _User_friends(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  7685  	defer func() {
  7686  		if r := recover(); r != nil {
  7687  			ec.Error(ctx, ec.Recover(ctx, r))
  7688  			ret = graphql.Null
  7689  		}
  7690  	}()
  7691  	fc := &graphql.FieldContext{
  7692  		Object:   "User",
  7693  		Field:    field,
  7694  		Args:     nil,
  7695  		IsMethod: true,
  7696  	}
  7697  
  7698  	ctx = graphql.WithFieldContext(ctx, fc)
  7699  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7700  		ctx = rctx // use context from middleware stack in children
  7701  		return ec.resolvers.User().Friends(rctx, obj)
  7702  	})
  7703  
  7704  	if resTmp == nil {
  7705  		if !graphql.HasFieldError(ctx, fc) {
  7706  			ec.Errorf(ctx, "must not be null")
  7707  		}
  7708  		return graphql.Null
  7709  	}
  7710  	res := resTmp.([]*User)
  7711  	fc.Result = res
  7712  	return ec.marshalNUser2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐUserᚄ(ctx, field.Selections, res)
  7713  }
  7714  
  7715  func (ec *executionContext) _User_created(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  7716  	defer func() {
  7717  		if r := recover(); r != nil {
  7718  			ec.Error(ctx, ec.Recover(ctx, r))
  7719  			ret = graphql.Null
  7720  		}
  7721  	}()
  7722  	fc := &graphql.FieldContext{
  7723  		Object:   "User",
  7724  		Field:    field,
  7725  		Args:     nil,
  7726  		IsMethod: false,
  7727  	}
  7728  
  7729  	ctx = graphql.WithFieldContext(ctx, fc)
  7730  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7731  		ctx = rctx // use context from middleware stack in children
  7732  		return obj.Created, nil
  7733  	})
  7734  
  7735  	if resTmp == nil {
  7736  		if !graphql.HasFieldError(ctx, fc) {
  7737  			ec.Errorf(ctx, "must not be null")
  7738  		}
  7739  		return graphql.Null
  7740  	}
  7741  	res := resTmp.(time.Time)
  7742  	fc.Result = res
  7743  	return ec.marshalNTime2timeᚐTime(ctx, field.Selections, res)
  7744  }
  7745  
  7746  func (ec *executionContext) _User_updated(ctx context.Context, field graphql.CollectedField, obj *User) (ret graphql.Marshaler) {
  7747  	defer func() {
  7748  		if r := recover(); r != nil {
  7749  			ec.Error(ctx, ec.Recover(ctx, r))
  7750  			ret = graphql.Null
  7751  		}
  7752  	}()
  7753  	fc := &graphql.FieldContext{
  7754  		Object:   "User",
  7755  		Field:    field,
  7756  		Args:     nil,
  7757  		IsMethod: false,
  7758  	}
  7759  
  7760  	ctx = graphql.WithFieldContext(ctx, fc)
  7761  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7762  		ctx = rctx // use context from middleware stack in children
  7763  		return obj.Updated, nil
  7764  	})
  7765  
  7766  	if resTmp == nil {
  7767  		return graphql.Null
  7768  	}
  7769  	res := resTmp.(*time.Time)
  7770  	fc.Result = res
  7771  	return ec.marshalOTime2ᚖtimeᚐTime(ctx, field.Selections, res)
  7772  }
  7773  
  7774  func (ec *executionContext) _ValidType_differentCase(ctx context.Context, field graphql.CollectedField, obj *ValidType) (ret graphql.Marshaler) {
  7775  	defer func() {
  7776  		if r := recover(); r != nil {
  7777  			ec.Error(ctx, ec.Recover(ctx, r))
  7778  			ret = graphql.Null
  7779  		}
  7780  	}()
  7781  	fc := &graphql.FieldContext{
  7782  		Object:   "ValidType",
  7783  		Field:    field,
  7784  		Args:     nil,
  7785  		IsMethod: false,
  7786  	}
  7787  
  7788  	ctx = graphql.WithFieldContext(ctx, fc)
  7789  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7790  		ctx = rctx // use context from middleware stack in children
  7791  		return obj.DifferentCase, nil
  7792  	})
  7793  
  7794  	if resTmp == nil {
  7795  		if !graphql.HasFieldError(ctx, fc) {
  7796  			ec.Errorf(ctx, "must not be null")
  7797  		}
  7798  		return graphql.Null
  7799  	}
  7800  	res := resTmp.(string)
  7801  	fc.Result = res
  7802  	return ec.marshalNString2string(ctx, field.Selections, res)
  7803  }
  7804  
  7805  func (ec *executionContext) _ValidType_different_case(ctx context.Context, field graphql.CollectedField, obj *ValidType) (ret graphql.Marshaler) {
  7806  	defer func() {
  7807  		if r := recover(); r != nil {
  7808  			ec.Error(ctx, ec.Recover(ctx, r))
  7809  			ret = graphql.Null
  7810  		}
  7811  	}()
  7812  	fc := &graphql.FieldContext{
  7813  		Object:   "ValidType",
  7814  		Field:    field,
  7815  		Args:     nil,
  7816  		IsMethod: false,
  7817  	}
  7818  
  7819  	ctx = graphql.WithFieldContext(ctx, fc)
  7820  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7821  		ctx = rctx // use context from middleware stack in children
  7822  		return obj.DifferentCaseOld, nil
  7823  	})
  7824  
  7825  	if resTmp == nil {
  7826  		if !graphql.HasFieldError(ctx, fc) {
  7827  			ec.Errorf(ctx, "must not be null")
  7828  		}
  7829  		return graphql.Null
  7830  	}
  7831  	res := resTmp.(string)
  7832  	fc.Result = res
  7833  	return ec.marshalNString2string(ctx, field.Selections, res)
  7834  }
  7835  
  7836  func (ec *executionContext) _ValidType_validInputKeywords(ctx context.Context, field graphql.CollectedField, obj *ValidType) (ret graphql.Marshaler) {
  7837  	defer func() {
  7838  		if r := recover(); r != nil {
  7839  			ec.Error(ctx, ec.Recover(ctx, r))
  7840  			ret = graphql.Null
  7841  		}
  7842  	}()
  7843  	fc := &graphql.FieldContext{
  7844  		Object:   "ValidType",
  7845  		Field:    field,
  7846  		Args:     nil,
  7847  		IsMethod: false,
  7848  	}
  7849  
  7850  	ctx = graphql.WithFieldContext(ctx, fc)
  7851  	rawArgs := field.ArgumentMap(ec.Variables)
  7852  	args, err := ec.field_ValidType_validInputKeywords_args(ctx, rawArgs)
  7853  	if err != nil {
  7854  		ec.Error(ctx, err)
  7855  		return graphql.Null
  7856  	}
  7857  	fc.Args = args
  7858  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7859  		ctx = rctx // use context from middleware stack in children
  7860  		return obj.ValidInputKeywords, nil
  7861  	})
  7862  
  7863  	if resTmp == nil {
  7864  		if !graphql.HasFieldError(ctx, fc) {
  7865  			ec.Errorf(ctx, "must not be null")
  7866  		}
  7867  		return graphql.Null
  7868  	}
  7869  	res := resTmp.(bool)
  7870  	fc.Result = res
  7871  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  7872  }
  7873  
  7874  func (ec *executionContext) _ValidType_validArgs(ctx context.Context, field graphql.CollectedField, obj *ValidType) (ret graphql.Marshaler) {
  7875  	defer func() {
  7876  		if r := recover(); r != nil {
  7877  			ec.Error(ctx, ec.Recover(ctx, r))
  7878  			ret = graphql.Null
  7879  		}
  7880  	}()
  7881  	fc := &graphql.FieldContext{
  7882  		Object:   "ValidType",
  7883  		Field:    field,
  7884  		Args:     nil,
  7885  		IsMethod: false,
  7886  	}
  7887  
  7888  	ctx = graphql.WithFieldContext(ctx, fc)
  7889  	rawArgs := field.ArgumentMap(ec.Variables)
  7890  	args, err := ec.field_ValidType_validArgs_args(ctx, rawArgs)
  7891  	if err != nil {
  7892  		ec.Error(ctx, err)
  7893  		return graphql.Null
  7894  	}
  7895  	fc.Args = args
  7896  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7897  		ctx = rctx // use context from middleware stack in children
  7898  		return obj.ValidArgs, nil
  7899  	})
  7900  
  7901  	if resTmp == nil {
  7902  		if !graphql.HasFieldError(ctx, fc) {
  7903  			ec.Errorf(ctx, "must not be null")
  7904  		}
  7905  		return graphql.Null
  7906  	}
  7907  	res := resTmp.(bool)
  7908  	fc.Result = res
  7909  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  7910  }
  7911  
  7912  func (ec *executionContext) _WrappedStruct_name(ctx context.Context, field graphql.CollectedField, obj *WrappedStruct) (ret graphql.Marshaler) {
  7913  	defer func() {
  7914  		if r := recover(); r != nil {
  7915  			ec.Error(ctx, ec.Recover(ctx, r))
  7916  			ret = graphql.Null
  7917  		}
  7918  	}()
  7919  	fc := &graphql.FieldContext{
  7920  		Object:   "WrappedStruct",
  7921  		Field:    field,
  7922  		Args:     nil,
  7923  		IsMethod: false,
  7924  	}
  7925  
  7926  	ctx = graphql.WithFieldContext(ctx, fc)
  7927  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7928  		ctx = rctx // use context from middleware stack in children
  7929  		return obj.Name, nil
  7930  	})
  7931  
  7932  	if resTmp == nil {
  7933  		if !graphql.HasFieldError(ctx, fc) {
  7934  			ec.Errorf(ctx, "must not be null")
  7935  		}
  7936  		return graphql.Null
  7937  	}
  7938  	res := resTmp.(string)
  7939  	fc.Result = res
  7940  	return ec.marshalNString2string(ctx, field.Selections, res)
  7941  }
  7942  
  7943  func (ec *executionContext) _XXIt_id(ctx context.Context, field graphql.CollectedField, obj *XXIt) (ret graphql.Marshaler) {
  7944  	defer func() {
  7945  		if r := recover(); r != nil {
  7946  			ec.Error(ctx, ec.Recover(ctx, r))
  7947  			ret = graphql.Null
  7948  		}
  7949  	}()
  7950  	fc := &graphql.FieldContext{
  7951  		Object:   "XXIt",
  7952  		Field:    field,
  7953  		Args:     nil,
  7954  		IsMethod: false,
  7955  	}
  7956  
  7957  	ctx = graphql.WithFieldContext(ctx, fc)
  7958  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7959  		ctx = rctx // use context from middleware stack in children
  7960  		return obj.ID, nil
  7961  	})
  7962  
  7963  	if resTmp == nil {
  7964  		if !graphql.HasFieldError(ctx, fc) {
  7965  			ec.Errorf(ctx, "must not be null")
  7966  		}
  7967  		return graphql.Null
  7968  	}
  7969  	res := resTmp.(string)
  7970  	fc.Result = res
  7971  	return ec.marshalNID2string(ctx, field.Selections, res)
  7972  }
  7973  
  7974  func (ec *executionContext) _XxIt_id(ctx context.Context, field graphql.CollectedField, obj *XxIt) (ret graphql.Marshaler) {
  7975  	defer func() {
  7976  		if r := recover(); r != nil {
  7977  			ec.Error(ctx, ec.Recover(ctx, r))
  7978  			ret = graphql.Null
  7979  		}
  7980  	}()
  7981  	fc := &graphql.FieldContext{
  7982  		Object:   "XxIt",
  7983  		Field:    field,
  7984  		Args:     nil,
  7985  		IsMethod: false,
  7986  	}
  7987  
  7988  	ctx = graphql.WithFieldContext(ctx, fc)
  7989  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  7990  		ctx = rctx // use context from middleware stack in children
  7991  		return obj.ID, nil
  7992  	})
  7993  
  7994  	if resTmp == nil {
  7995  		if !graphql.HasFieldError(ctx, fc) {
  7996  			ec.Errorf(ctx, "must not be null")
  7997  		}
  7998  		return graphql.Null
  7999  	}
  8000  	res := resTmp.(string)
  8001  	fc.Result = res
  8002  	return ec.marshalNID2string(ctx, field.Selections, res)
  8003  }
  8004  
  8005  func (ec *executionContext) ___Directive_name(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) (ret graphql.Marshaler) {
  8006  	defer func() {
  8007  		if r := recover(); r != nil {
  8008  			ec.Error(ctx, ec.Recover(ctx, r))
  8009  			ret = graphql.Null
  8010  		}
  8011  	}()
  8012  	fc := &graphql.FieldContext{
  8013  		Object:   "__Directive",
  8014  		Field:    field,
  8015  		Args:     nil,
  8016  		IsMethod: false,
  8017  	}
  8018  
  8019  	ctx = graphql.WithFieldContext(ctx, fc)
  8020  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8021  		ctx = rctx // use context from middleware stack in children
  8022  		return obj.Name, nil
  8023  	})
  8024  
  8025  	if resTmp == nil {
  8026  		if !graphql.HasFieldError(ctx, fc) {
  8027  			ec.Errorf(ctx, "must not be null")
  8028  		}
  8029  		return graphql.Null
  8030  	}
  8031  	res := resTmp.(string)
  8032  	fc.Result = res
  8033  	return ec.marshalNString2string(ctx, field.Selections, res)
  8034  }
  8035  
  8036  func (ec *executionContext) ___Directive_description(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) (ret graphql.Marshaler) {
  8037  	defer func() {
  8038  		if r := recover(); r != nil {
  8039  			ec.Error(ctx, ec.Recover(ctx, r))
  8040  			ret = graphql.Null
  8041  		}
  8042  	}()
  8043  	fc := &graphql.FieldContext{
  8044  		Object:   "__Directive",
  8045  		Field:    field,
  8046  		Args:     nil,
  8047  		IsMethod: false,
  8048  	}
  8049  
  8050  	ctx = graphql.WithFieldContext(ctx, fc)
  8051  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8052  		ctx = rctx // use context from middleware stack in children
  8053  		return obj.Description, nil
  8054  	})
  8055  
  8056  	if resTmp == nil {
  8057  		return graphql.Null
  8058  	}
  8059  	res := resTmp.(string)
  8060  	fc.Result = res
  8061  	return ec.marshalOString2string(ctx, field.Selections, res)
  8062  }
  8063  
  8064  func (ec *executionContext) ___Directive_locations(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) (ret graphql.Marshaler) {
  8065  	defer func() {
  8066  		if r := recover(); r != nil {
  8067  			ec.Error(ctx, ec.Recover(ctx, r))
  8068  			ret = graphql.Null
  8069  		}
  8070  	}()
  8071  	fc := &graphql.FieldContext{
  8072  		Object:   "__Directive",
  8073  		Field:    field,
  8074  		Args:     nil,
  8075  		IsMethod: false,
  8076  	}
  8077  
  8078  	ctx = graphql.WithFieldContext(ctx, fc)
  8079  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8080  		ctx = rctx // use context from middleware stack in children
  8081  		return obj.Locations, nil
  8082  	})
  8083  
  8084  	if resTmp == nil {
  8085  		if !graphql.HasFieldError(ctx, fc) {
  8086  			ec.Errorf(ctx, "must not be null")
  8087  		}
  8088  		return graphql.Null
  8089  	}
  8090  	res := resTmp.([]string)
  8091  	fc.Result = res
  8092  	return ec.marshalN__DirectiveLocation2ᚕstringᚄ(ctx, field.Selections, res)
  8093  }
  8094  
  8095  func (ec *executionContext) ___Directive_args(ctx context.Context, field graphql.CollectedField, obj *introspection.Directive) (ret graphql.Marshaler) {
  8096  	defer func() {
  8097  		if r := recover(); r != nil {
  8098  			ec.Error(ctx, ec.Recover(ctx, r))
  8099  			ret = graphql.Null
  8100  		}
  8101  	}()
  8102  	fc := &graphql.FieldContext{
  8103  		Object:   "__Directive",
  8104  		Field:    field,
  8105  		Args:     nil,
  8106  		IsMethod: false,
  8107  	}
  8108  
  8109  	ctx = graphql.WithFieldContext(ctx, fc)
  8110  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8111  		ctx = rctx // use context from middleware stack in children
  8112  		return obj.Args, nil
  8113  	})
  8114  
  8115  	if resTmp == nil {
  8116  		if !graphql.HasFieldError(ctx, fc) {
  8117  			ec.Errorf(ctx, "must not be null")
  8118  		}
  8119  		return graphql.Null
  8120  	}
  8121  	res := resTmp.([]introspection.InputValue)
  8122  	fc.Result = res
  8123  	return ec.marshalN__InputValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValueᚄ(ctx, field.Selections, res)
  8124  }
  8125  
  8126  func (ec *executionContext) ___EnumValue_name(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) (ret graphql.Marshaler) {
  8127  	defer func() {
  8128  		if r := recover(); r != nil {
  8129  			ec.Error(ctx, ec.Recover(ctx, r))
  8130  			ret = graphql.Null
  8131  		}
  8132  	}()
  8133  	fc := &graphql.FieldContext{
  8134  		Object:   "__EnumValue",
  8135  		Field:    field,
  8136  		Args:     nil,
  8137  		IsMethod: false,
  8138  	}
  8139  
  8140  	ctx = graphql.WithFieldContext(ctx, fc)
  8141  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8142  		ctx = rctx // use context from middleware stack in children
  8143  		return obj.Name, nil
  8144  	})
  8145  
  8146  	if resTmp == nil {
  8147  		if !graphql.HasFieldError(ctx, fc) {
  8148  			ec.Errorf(ctx, "must not be null")
  8149  		}
  8150  		return graphql.Null
  8151  	}
  8152  	res := resTmp.(string)
  8153  	fc.Result = res
  8154  	return ec.marshalNString2string(ctx, field.Selections, res)
  8155  }
  8156  
  8157  func (ec *executionContext) ___EnumValue_description(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) (ret graphql.Marshaler) {
  8158  	defer func() {
  8159  		if r := recover(); r != nil {
  8160  			ec.Error(ctx, ec.Recover(ctx, r))
  8161  			ret = graphql.Null
  8162  		}
  8163  	}()
  8164  	fc := &graphql.FieldContext{
  8165  		Object:   "__EnumValue",
  8166  		Field:    field,
  8167  		Args:     nil,
  8168  		IsMethod: false,
  8169  	}
  8170  
  8171  	ctx = graphql.WithFieldContext(ctx, fc)
  8172  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8173  		ctx = rctx // use context from middleware stack in children
  8174  		return obj.Description, nil
  8175  	})
  8176  
  8177  	if resTmp == nil {
  8178  		return graphql.Null
  8179  	}
  8180  	res := resTmp.(string)
  8181  	fc.Result = res
  8182  	return ec.marshalOString2string(ctx, field.Selections, res)
  8183  }
  8184  
  8185  func (ec *executionContext) ___EnumValue_isDeprecated(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) (ret graphql.Marshaler) {
  8186  	defer func() {
  8187  		if r := recover(); r != nil {
  8188  			ec.Error(ctx, ec.Recover(ctx, r))
  8189  			ret = graphql.Null
  8190  		}
  8191  	}()
  8192  	fc := &graphql.FieldContext{
  8193  		Object:   "__EnumValue",
  8194  		Field:    field,
  8195  		Args:     nil,
  8196  		IsMethod: true,
  8197  	}
  8198  
  8199  	ctx = graphql.WithFieldContext(ctx, fc)
  8200  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8201  		ctx = rctx // use context from middleware stack in children
  8202  		return obj.IsDeprecated(), nil
  8203  	})
  8204  
  8205  	if resTmp == nil {
  8206  		if !graphql.HasFieldError(ctx, fc) {
  8207  			ec.Errorf(ctx, "must not be null")
  8208  		}
  8209  		return graphql.Null
  8210  	}
  8211  	res := resTmp.(bool)
  8212  	fc.Result = res
  8213  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  8214  }
  8215  
  8216  func (ec *executionContext) ___EnumValue_deprecationReason(ctx context.Context, field graphql.CollectedField, obj *introspection.EnumValue) (ret graphql.Marshaler) {
  8217  	defer func() {
  8218  		if r := recover(); r != nil {
  8219  			ec.Error(ctx, ec.Recover(ctx, r))
  8220  			ret = graphql.Null
  8221  		}
  8222  	}()
  8223  	fc := &graphql.FieldContext{
  8224  		Object:   "__EnumValue",
  8225  		Field:    field,
  8226  		Args:     nil,
  8227  		IsMethod: true,
  8228  	}
  8229  
  8230  	ctx = graphql.WithFieldContext(ctx, fc)
  8231  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8232  		ctx = rctx // use context from middleware stack in children
  8233  		return obj.DeprecationReason(), nil
  8234  	})
  8235  
  8236  	if resTmp == nil {
  8237  		return graphql.Null
  8238  	}
  8239  	res := resTmp.(*string)
  8240  	fc.Result = res
  8241  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  8242  }
  8243  
  8244  func (ec *executionContext) ___Field_name(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) (ret graphql.Marshaler) {
  8245  	defer func() {
  8246  		if r := recover(); r != nil {
  8247  			ec.Error(ctx, ec.Recover(ctx, r))
  8248  			ret = graphql.Null
  8249  		}
  8250  	}()
  8251  	fc := &graphql.FieldContext{
  8252  		Object:   "__Field",
  8253  		Field:    field,
  8254  		Args:     nil,
  8255  		IsMethod: false,
  8256  	}
  8257  
  8258  	ctx = graphql.WithFieldContext(ctx, fc)
  8259  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8260  		ctx = rctx // use context from middleware stack in children
  8261  		return obj.Name, nil
  8262  	})
  8263  
  8264  	if resTmp == nil {
  8265  		if !graphql.HasFieldError(ctx, fc) {
  8266  			ec.Errorf(ctx, "must not be null")
  8267  		}
  8268  		return graphql.Null
  8269  	}
  8270  	res := resTmp.(string)
  8271  	fc.Result = res
  8272  	return ec.marshalNString2string(ctx, field.Selections, res)
  8273  }
  8274  
  8275  func (ec *executionContext) ___Field_description(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) (ret graphql.Marshaler) {
  8276  	defer func() {
  8277  		if r := recover(); r != nil {
  8278  			ec.Error(ctx, ec.Recover(ctx, r))
  8279  			ret = graphql.Null
  8280  		}
  8281  	}()
  8282  	fc := &graphql.FieldContext{
  8283  		Object:   "__Field",
  8284  		Field:    field,
  8285  		Args:     nil,
  8286  		IsMethod: false,
  8287  	}
  8288  
  8289  	ctx = graphql.WithFieldContext(ctx, fc)
  8290  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8291  		ctx = rctx // use context from middleware stack in children
  8292  		return obj.Description, nil
  8293  	})
  8294  
  8295  	if resTmp == nil {
  8296  		return graphql.Null
  8297  	}
  8298  	res := resTmp.(string)
  8299  	fc.Result = res
  8300  	return ec.marshalOString2string(ctx, field.Selections, res)
  8301  }
  8302  
  8303  func (ec *executionContext) ___Field_args(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) (ret graphql.Marshaler) {
  8304  	defer func() {
  8305  		if r := recover(); r != nil {
  8306  			ec.Error(ctx, ec.Recover(ctx, r))
  8307  			ret = graphql.Null
  8308  		}
  8309  	}()
  8310  	fc := &graphql.FieldContext{
  8311  		Object:   "__Field",
  8312  		Field:    field,
  8313  		Args:     nil,
  8314  		IsMethod: false,
  8315  	}
  8316  
  8317  	ctx = graphql.WithFieldContext(ctx, fc)
  8318  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8319  		ctx = rctx // use context from middleware stack in children
  8320  		return obj.Args, nil
  8321  	})
  8322  
  8323  	if resTmp == nil {
  8324  		if !graphql.HasFieldError(ctx, fc) {
  8325  			ec.Errorf(ctx, "must not be null")
  8326  		}
  8327  		return graphql.Null
  8328  	}
  8329  	res := resTmp.([]introspection.InputValue)
  8330  	fc.Result = res
  8331  	return ec.marshalN__InputValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValueᚄ(ctx, field.Selections, res)
  8332  }
  8333  
  8334  func (ec *executionContext) ___Field_type(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) (ret graphql.Marshaler) {
  8335  	defer func() {
  8336  		if r := recover(); r != nil {
  8337  			ec.Error(ctx, ec.Recover(ctx, r))
  8338  			ret = graphql.Null
  8339  		}
  8340  	}()
  8341  	fc := &graphql.FieldContext{
  8342  		Object:   "__Field",
  8343  		Field:    field,
  8344  		Args:     nil,
  8345  		IsMethod: false,
  8346  	}
  8347  
  8348  	ctx = graphql.WithFieldContext(ctx, fc)
  8349  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8350  		ctx = rctx // use context from middleware stack in children
  8351  		return obj.Type, nil
  8352  	})
  8353  
  8354  	if resTmp == nil {
  8355  		if !graphql.HasFieldError(ctx, fc) {
  8356  			ec.Errorf(ctx, "must not be null")
  8357  		}
  8358  		return graphql.Null
  8359  	}
  8360  	res := resTmp.(*introspection.Type)
  8361  	fc.Result = res
  8362  	return ec.marshalN__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  8363  }
  8364  
  8365  func (ec *executionContext) ___Field_isDeprecated(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) (ret graphql.Marshaler) {
  8366  	defer func() {
  8367  		if r := recover(); r != nil {
  8368  			ec.Error(ctx, ec.Recover(ctx, r))
  8369  			ret = graphql.Null
  8370  		}
  8371  	}()
  8372  	fc := &graphql.FieldContext{
  8373  		Object:   "__Field",
  8374  		Field:    field,
  8375  		Args:     nil,
  8376  		IsMethod: true,
  8377  	}
  8378  
  8379  	ctx = graphql.WithFieldContext(ctx, fc)
  8380  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8381  		ctx = rctx // use context from middleware stack in children
  8382  		return obj.IsDeprecated(), nil
  8383  	})
  8384  
  8385  	if resTmp == nil {
  8386  		if !graphql.HasFieldError(ctx, fc) {
  8387  			ec.Errorf(ctx, "must not be null")
  8388  		}
  8389  		return graphql.Null
  8390  	}
  8391  	res := resTmp.(bool)
  8392  	fc.Result = res
  8393  	return ec.marshalNBoolean2bool(ctx, field.Selections, res)
  8394  }
  8395  
  8396  func (ec *executionContext) ___Field_deprecationReason(ctx context.Context, field graphql.CollectedField, obj *introspection.Field) (ret graphql.Marshaler) {
  8397  	defer func() {
  8398  		if r := recover(); r != nil {
  8399  			ec.Error(ctx, ec.Recover(ctx, r))
  8400  			ret = graphql.Null
  8401  		}
  8402  	}()
  8403  	fc := &graphql.FieldContext{
  8404  		Object:   "__Field",
  8405  		Field:    field,
  8406  		Args:     nil,
  8407  		IsMethod: true,
  8408  	}
  8409  
  8410  	ctx = graphql.WithFieldContext(ctx, fc)
  8411  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8412  		ctx = rctx // use context from middleware stack in children
  8413  		return obj.DeprecationReason(), nil
  8414  	})
  8415  
  8416  	if resTmp == nil {
  8417  		return graphql.Null
  8418  	}
  8419  	res := resTmp.(*string)
  8420  	fc.Result = res
  8421  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  8422  }
  8423  
  8424  func (ec *executionContext) ___InputValue_name(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) (ret graphql.Marshaler) {
  8425  	defer func() {
  8426  		if r := recover(); r != nil {
  8427  			ec.Error(ctx, ec.Recover(ctx, r))
  8428  			ret = graphql.Null
  8429  		}
  8430  	}()
  8431  	fc := &graphql.FieldContext{
  8432  		Object:   "__InputValue",
  8433  		Field:    field,
  8434  		Args:     nil,
  8435  		IsMethod: false,
  8436  	}
  8437  
  8438  	ctx = graphql.WithFieldContext(ctx, fc)
  8439  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8440  		ctx = rctx // use context from middleware stack in children
  8441  		return obj.Name, nil
  8442  	})
  8443  
  8444  	if resTmp == nil {
  8445  		if !graphql.HasFieldError(ctx, fc) {
  8446  			ec.Errorf(ctx, "must not be null")
  8447  		}
  8448  		return graphql.Null
  8449  	}
  8450  	res := resTmp.(string)
  8451  	fc.Result = res
  8452  	return ec.marshalNString2string(ctx, field.Selections, res)
  8453  }
  8454  
  8455  func (ec *executionContext) ___InputValue_description(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) (ret graphql.Marshaler) {
  8456  	defer func() {
  8457  		if r := recover(); r != nil {
  8458  			ec.Error(ctx, ec.Recover(ctx, r))
  8459  			ret = graphql.Null
  8460  		}
  8461  	}()
  8462  	fc := &graphql.FieldContext{
  8463  		Object:   "__InputValue",
  8464  		Field:    field,
  8465  		Args:     nil,
  8466  		IsMethod: false,
  8467  	}
  8468  
  8469  	ctx = graphql.WithFieldContext(ctx, fc)
  8470  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8471  		ctx = rctx // use context from middleware stack in children
  8472  		return obj.Description, nil
  8473  	})
  8474  
  8475  	if resTmp == nil {
  8476  		return graphql.Null
  8477  	}
  8478  	res := resTmp.(string)
  8479  	fc.Result = res
  8480  	return ec.marshalOString2string(ctx, field.Selections, res)
  8481  }
  8482  
  8483  func (ec *executionContext) ___InputValue_type(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) (ret graphql.Marshaler) {
  8484  	defer func() {
  8485  		if r := recover(); r != nil {
  8486  			ec.Error(ctx, ec.Recover(ctx, r))
  8487  			ret = graphql.Null
  8488  		}
  8489  	}()
  8490  	fc := &graphql.FieldContext{
  8491  		Object:   "__InputValue",
  8492  		Field:    field,
  8493  		Args:     nil,
  8494  		IsMethod: false,
  8495  	}
  8496  
  8497  	ctx = graphql.WithFieldContext(ctx, fc)
  8498  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8499  		ctx = rctx // use context from middleware stack in children
  8500  		return obj.Type, nil
  8501  	})
  8502  
  8503  	if resTmp == nil {
  8504  		if !graphql.HasFieldError(ctx, fc) {
  8505  			ec.Errorf(ctx, "must not be null")
  8506  		}
  8507  		return graphql.Null
  8508  	}
  8509  	res := resTmp.(*introspection.Type)
  8510  	fc.Result = res
  8511  	return ec.marshalN__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  8512  }
  8513  
  8514  func (ec *executionContext) ___InputValue_defaultValue(ctx context.Context, field graphql.CollectedField, obj *introspection.InputValue) (ret graphql.Marshaler) {
  8515  	defer func() {
  8516  		if r := recover(); r != nil {
  8517  			ec.Error(ctx, ec.Recover(ctx, r))
  8518  			ret = graphql.Null
  8519  		}
  8520  	}()
  8521  	fc := &graphql.FieldContext{
  8522  		Object:   "__InputValue",
  8523  		Field:    field,
  8524  		Args:     nil,
  8525  		IsMethod: false,
  8526  	}
  8527  
  8528  	ctx = graphql.WithFieldContext(ctx, fc)
  8529  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8530  		ctx = rctx // use context from middleware stack in children
  8531  		return obj.DefaultValue, nil
  8532  	})
  8533  
  8534  	if resTmp == nil {
  8535  		return graphql.Null
  8536  	}
  8537  	res := resTmp.(*string)
  8538  	fc.Result = res
  8539  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  8540  }
  8541  
  8542  func (ec *executionContext) ___Schema_types(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) (ret graphql.Marshaler) {
  8543  	defer func() {
  8544  		if r := recover(); r != nil {
  8545  			ec.Error(ctx, ec.Recover(ctx, r))
  8546  			ret = graphql.Null
  8547  		}
  8548  	}()
  8549  	fc := &graphql.FieldContext{
  8550  		Object:   "__Schema",
  8551  		Field:    field,
  8552  		Args:     nil,
  8553  		IsMethod: true,
  8554  	}
  8555  
  8556  	ctx = graphql.WithFieldContext(ctx, fc)
  8557  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8558  		ctx = rctx // use context from middleware stack in children
  8559  		return obj.Types(), nil
  8560  	})
  8561  
  8562  	if resTmp == nil {
  8563  		if !graphql.HasFieldError(ctx, fc) {
  8564  			ec.Errorf(ctx, "must not be null")
  8565  		}
  8566  		return graphql.Null
  8567  	}
  8568  	res := resTmp.([]introspection.Type)
  8569  	fc.Result = res
  8570  	return ec.marshalN__Type2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐTypeᚄ(ctx, field.Selections, res)
  8571  }
  8572  
  8573  func (ec *executionContext) ___Schema_queryType(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) (ret graphql.Marshaler) {
  8574  	defer func() {
  8575  		if r := recover(); r != nil {
  8576  			ec.Error(ctx, ec.Recover(ctx, r))
  8577  			ret = graphql.Null
  8578  		}
  8579  	}()
  8580  	fc := &graphql.FieldContext{
  8581  		Object:   "__Schema",
  8582  		Field:    field,
  8583  		Args:     nil,
  8584  		IsMethod: true,
  8585  	}
  8586  
  8587  	ctx = graphql.WithFieldContext(ctx, fc)
  8588  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8589  		ctx = rctx // use context from middleware stack in children
  8590  		return obj.QueryType(), nil
  8591  	})
  8592  
  8593  	if resTmp == nil {
  8594  		if !graphql.HasFieldError(ctx, fc) {
  8595  			ec.Errorf(ctx, "must not be null")
  8596  		}
  8597  		return graphql.Null
  8598  	}
  8599  	res := resTmp.(*introspection.Type)
  8600  	fc.Result = res
  8601  	return ec.marshalN__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  8602  }
  8603  
  8604  func (ec *executionContext) ___Schema_mutationType(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) (ret graphql.Marshaler) {
  8605  	defer func() {
  8606  		if r := recover(); r != nil {
  8607  			ec.Error(ctx, ec.Recover(ctx, r))
  8608  			ret = graphql.Null
  8609  		}
  8610  	}()
  8611  	fc := &graphql.FieldContext{
  8612  		Object:   "__Schema",
  8613  		Field:    field,
  8614  		Args:     nil,
  8615  		IsMethod: true,
  8616  	}
  8617  
  8618  	ctx = graphql.WithFieldContext(ctx, fc)
  8619  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8620  		ctx = rctx // use context from middleware stack in children
  8621  		return obj.MutationType(), nil
  8622  	})
  8623  
  8624  	if resTmp == nil {
  8625  		return graphql.Null
  8626  	}
  8627  	res := resTmp.(*introspection.Type)
  8628  	fc.Result = res
  8629  	return ec.marshalO__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  8630  }
  8631  
  8632  func (ec *executionContext) ___Schema_subscriptionType(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) (ret graphql.Marshaler) {
  8633  	defer func() {
  8634  		if r := recover(); r != nil {
  8635  			ec.Error(ctx, ec.Recover(ctx, r))
  8636  			ret = graphql.Null
  8637  		}
  8638  	}()
  8639  	fc := &graphql.FieldContext{
  8640  		Object:   "__Schema",
  8641  		Field:    field,
  8642  		Args:     nil,
  8643  		IsMethod: true,
  8644  	}
  8645  
  8646  	ctx = graphql.WithFieldContext(ctx, fc)
  8647  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8648  		ctx = rctx // use context from middleware stack in children
  8649  		return obj.SubscriptionType(), nil
  8650  	})
  8651  
  8652  	if resTmp == nil {
  8653  		return graphql.Null
  8654  	}
  8655  	res := resTmp.(*introspection.Type)
  8656  	fc.Result = res
  8657  	return ec.marshalO__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  8658  }
  8659  
  8660  func (ec *executionContext) ___Schema_directives(ctx context.Context, field graphql.CollectedField, obj *introspection.Schema) (ret graphql.Marshaler) {
  8661  	defer func() {
  8662  		if r := recover(); r != nil {
  8663  			ec.Error(ctx, ec.Recover(ctx, r))
  8664  			ret = graphql.Null
  8665  		}
  8666  	}()
  8667  	fc := &graphql.FieldContext{
  8668  		Object:   "__Schema",
  8669  		Field:    field,
  8670  		Args:     nil,
  8671  		IsMethod: true,
  8672  	}
  8673  
  8674  	ctx = graphql.WithFieldContext(ctx, fc)
  8675  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8676  		ctx = rctx // use context from middleware stack in children
  8677  		return obj.Directives(), nil
  8678  	})
  8679  
  8680  	if resTmp == nil {
  8681  		if !graphql.HasFieldError(ctx, fc) {
  8682  			ec.Errorf(ctx, "must not be null")
  8683  		}
  8684  		return graphql.Null
  8685  	}
  8686  	res := resTmp.([]introspection.Directive)
  8687  	fc.Result = res
  8688  	return ec.marshalN__Directive2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐDirectiveᚄ(ctx, field.Selections, res)
  8689  }
  8690  
  8691  func (ec *executionContext) ___Type_kind(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8692  	defer func() {
  8693  		if r := recover(); r != nil {
  8694  			ec.Error(ctx, ec.Recover(ctx, r))
  8695  			ret = graphql.Null
  8696  		}
  8697  	}()
  8698  	fc := &graphql.FieldContext{
  8699  		Object:   "__Type",
  8700  		Field:    field,
  8701  		Args:     nil,
  8702  		IsMethod: true,
  8703  	}
  8704  
  8705  	ctx = graphql.WithFieldContext(ctx, fc)
  8706  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8707  		ctx = rctx // use context from middleware stack in children
  8708  		return obj.Kind(), nil
  8709  	})
  8710  
  8711  	if resTmp == nil {
  8712  		if !graphql.HasFieldError(ctx, fc) {
  8713  			ec.Errorf(ctx, "must not be null")
  8714  		}
  8715  		return graphql.Null
  8716  	}
  8717  	res := resTmp.(string)
  8718  	fc.Result = res
  8719  	return ec.marshalN__TypeKind2string(ctx, field.Selections, res)
  8720  }
  8721  
  8722  func (ec *executionContext) ___Type_name(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8723  	defer func() {
  8724  		if r := recover(); r != nil {
  8725  			ec.Error(ctx, ec.Recover(ctx, r))
  8726  			ret = graphql.Null
  8727  		}
  8728  	}()
  8729  	fc := &graphql.FieldContext{
  8730  		Object:   "__Type",
  8731  		Field:    field,
  8732  		Args:     nil,
  8733  		IsMethod: true,
  8734  	}
  8735  
  8736  	ctx = graphql.WithFieldContext(ctx, fc)
  8737  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8738  		ctx = rctx // use context from middleware stack in children
  8739  		return obj.Name(), nil
  8740  	})
  8741  
  8742  	if resTmp == nil {
  8743  		return graphql.Null
  8744  	}
  8745  	res := resTmp.(*string)
  8746  	fc.Result = res
  8747  	return ec.marshalOString2ᚖstring(ctx, field.Selections, res)
  8748  }
  8749  
  8750  func (ec *executionContext) ___Type_description(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8751  	defer func() {
  8752  		if r := recover(); r != nil {
  8753  			ec.Error(ctx, ec.Recover(ctx, r))
  8754  			ret = graphql.Null
  8755  		}
  8756  	}()
  8757  	fc := &graphql.FieldContext{
  8758  		Object:   "__Type",
  8759  		Field:    field,
  8760  		Args:     nil,
  8761  		IsMethod: true,
  8762  	}
  8763  
  8764  	ctx = graphql.WithFieldContext(ctx, fc)
  8765  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8766  		ctx = rctx // use context from middleware stack in children
  8767  		return obj.Description(), nil
  8768  	})
  8769  
  8770  	if resTmp == nil {
  8771  		return graphql.Null
  8772  	}
  8773  	res := resTmp.(string)
  8774  	fc.Result = res
  8775  	return ec.marshalOString2string(ctx, field.Selections, res)
  8776  }
  8777  
  8778  func (ec *executionContext) ___Type_fields(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8779  	defer func() {
  8780  		if r := recover(); r != nil {
  8781  			ec.Error(ctx, ec.Recover(ctx, r))
  8782  			ret = graphql.Null
  8783  		}
  8784  	}()
  8785  	fc := &graphql.FieldContext{
  8786  		Object:   "__Type",
  8787  		Field:    field,
  8788  		Args:     nil,
  8789  		IsMethod: true,
  8790  	}
  8791  
  8792  	ctx = graphql.WithFieldContext(ctx, fc)
  8793  	rawArgs := field.ArgumentMap(ec.Variables)
  8794  	args, err := ec.field___Type_fields_args(ctx, rawArgs)
  8795  	if err != nil {
  8796  		ec.Error(ctx, err)
  8797  		return graphql.Null
  8798  	}
  8799  	fc.Args = args
  8800  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8801  		ctx = rctx // use context from middleware stack in children
  8802  		return obj.Fields(args["includeDeprecated"].(bool)), nil
  8803  	})
  8804  
  8805  	if resTmp == nil {
  8806  		return graphql.Null
  8807  	}
  8808  	res := resTmp.([]introspection.Field)
  8809  	fc.Result = res
  8810  	return ec.marshalO__Field2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐFieldᚄ(ctx, field.Selections, res)
  8811  }
  8812  
  8813  func (ec *executionContext) ___Type_interfaces(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8814  	defer func() {
  8815  		if r := recover(); r != nil {
  8816  			ec.Error(ctx, ec.Recover(ctx, r))
  8817  			ret = graphql.Null
  8818  		}
  8819  	}()
  8820  	fc := &graphql.FieldContext{
  8821  		Object:   "__Type",
  8822  		Field:    field,
  8823  		Args:     nil,
  8824  		IsMethod: true,
  8825  	}
  8826  
  8827  	ctx = graphql.WithFieldContext(ctx, fc)
  8828  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8829  		ctx = rctx // use context from middleware stack in children
  8830  		return obj.Interfaces(), nil
  8831  	})
  8832  
  8833  	if resTmp == nil {
  8834  		return graphql.Null
  8835  	}
  8836  	res := resTmp.([]introspection.Type)
  8837  	fc.Result = res
  8838  	return ec.marshalO__Type2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐTypeᚄ(ctx, field.Selections, res)
  8839  }
  8840  
  8841  func (ec *executionContext) ___Type_possibleTypes(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8842  	defer func() {
  8843  		if r := recover(); r != nil {
  8844  			ec.Error(ctx, ec.Recover(ctx, r))
  8845  			ret = graphql.Null
  8846  		}
  8847  	}()
  8848  	fc := &graphql.FieldContext{
  8849  		Object:   "__Type",
  8850  		Field:    field,
  8851  		Args:     nil,
  8852  		IsMethod: true,
  8853  	}
  8854  
  8855  	ctx = graphql.WithFieldContext(ctx, fc)
  8856  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8857  		ctx = rctx // use context from middleware stack in children
  8858  		return obj.PossibleTypes(), nil
  8859  	})
  8860  
  8861  	if resTmp == nil {
  8862  		return graphql.Null
  8863  	}
  8864  	res := resTmp.([]introspection.Type)
  8865  	fc.Result = res
  8866  	return ec.marshalO__Type2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐTypeᚄ(ctx, field.Selections, res)
  8867  }
  8868  
  8869  func (ec *executionContext) ___Type_enumValues(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8870  	defer func() {
  8871  		if r := recover(); r != nil {
  8872  			ec.Error(ctx, ec.Recover(ctx, r))
  8873  			ret = graphql.Null
  8874  		}
  8875  	}()
  8876  	fc := &graphql.FieldContext{
  8877  		Object:   "__Type",
  8878  		Field:    field,
  8879  		Args:     nil,
  8880  		IsMethod: true,
  8881  	}
  8882  
  8883  	ctx = graphql.WithFieldContext(ctx, fc)
  8884  	rawArgs := field.ArgumentMap(ec.Variables)
  8885  	args, err := ec.field___Type_enumValues_args(ctx, rawArgs)
  8886  	if err != nil {
  8887  		ec.Error(ctx, err)
  8888  		return graphql.Null
  8889  	}
  8890  	fc.Args = args
  8891  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8892  		ctx = rctx // use context from middleware stack in children
  8893  		return obj.EnumValues(args["includeDeprecated"].(bool)), nil
  8894  	})
  8895  
  8896  	if resTmp == nil {
  8897  		return graphql.Null
  8898  	}
  8899  	res := resTmp.([]introspection.EnumValue)
  8900  	fc.Result = res
  8901  	return ec.marshalO__EnumValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐEnumValueᚄ(ctx, field.Selections, res)
  8902  }
  8903  
  8904  func (ec *executionContext) ___Type_inputFields(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8905  	defer func() {
  8906  		if r := recover(); r != nil {
  8907  			ec.Error(ctx, ec.Recover(ctx, r))
  8908  			ret = graphql.Null
  8909  		}
  8910  	}()
  8911  	fc := &graphql.FieldContext{
  8912  		Object:   "__Type",
  8913  		Field:    field,
  8914  		Args:     nil,
  8915  		IsMethod: true,
  8916  	}
  8917  
  8918  	ctx = graphql.WithFieldContext(ctx, fc)
  8919  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8920  		ctx = rctx // use context from middleware stack in children
  8921  		return obj.InputFields(), nil
  8922  	})
  8923  
  8924  	if resTmp == nil {
  8925  		return graphql.Null
  8926  	}
  8927  	res := resTmp.([]introspection.InputValue)
  8928  	fc.Result = res
  8929  	return ec.marshalO__InputValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValueᚄ(ctx, field.Selections, res)
  8930  }
  8931  
  8932  func (ec *executionContext) ___Type_ofType(ctx context.Context, field graphql.CollectedField, obj *introspection.Type) (ret graphql.Marshaler) {
  8933  	defer func() {
  8934  		if r := recover(); r != nil {
  8935  			ec.Error(ctx, ec.Recover(ctx, r))
  8936  			ret = graphql.Null
  8937  		}
  8938  	}()
  8939  	fc := &graphql.FieldContext{
  8940  		Object:   "__Type",
  8941  		Field:    field,
  8942  		Args:     nil,
  8943  		IsMethod: true,
  8944  	}
  8945  
  8946  	ctx = graphql.WithFieldContext(ctx, fc)
  8947  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8948  		ctx = rctx // use context from middleware stack in children
  8949  		return obj.OfType(), nil
  8950  	})
  8951  
  8952  	if resTmp == nil {
  8953  		return graphql.Null
  8954  	}
  8955  	res := resTmp.(*introspection.Type)
  8956  	fc.Result = res
  8957  	return ec.marshalO__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, field.Selections, res)
  8958  }
  8959  
  8960  func (ec *executionContext) _asdfIt_id(ctx context.Context, field graphql.CollectedField, obj *AsdfIt) (ret graphql.Marshaler) {
  8961  	defer func() {
  8962  		if r := recover(); r != nil {
  8963  			ec.Error(ctx, ec.Recover(ctx, r))
  8964  			ret = graphql.Null
  8965  		}
  8966  	}()
  8967  	fc := &graphql.FieldContext{
  8968  		Object:   "asdfIt",
  8969  		Field:    field,
  8970  		Args:     nil,
  8971  		IsMethod: false,
  8972  	}
  8973  
  8974  	ctx = graphql.WithFieldContext(ctx, fc)
  8975  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  8976  		ctx = rctx // use context from middleware stack in children
  8977  		return obj.ID, nil
  8978  	})
  8979  
  8980  	if resTmp == nil {
  8981  		if !graphql.HasFieldError(ctx, fc) {
  8982  			ec.Errorf(ctx, "must not be null")
  8983  		}
  8984  		return graphql.Null
  8985  	}
  8986  	res := resTmp.(string)
  8987  	fc.Result = res
  8988  	return ec.marshalNID2string(ctx, field.Selections, res)
  8989  }
  8990  
  8991  func (ec *executionContext) _iIt_id(ctx context.Context, field graphql.CollectedField, obj *IIt) (ret graphql.Marshaler) {
  8992  	defer func() {
  8993  		if r := recover(); r != nil {
  8994  			ec.Error(ctx, ec.Recover(ctx, r))
  8995  			ret = graphql.Null
  8996  		}
  8997  	}()
  8998  	fc := &graphql.FieldContext{
  8999  		Object:   "iIt",
  9000  		Field:    field,
  9001  		Args:     nil,
  9002  		IsMethod: false,
  9003  	}
  9004  
  9005  	ctx = graphql.WithFieldContext(ctx, fc)
  9006  	resTmp := ec._fieldMiddleware(ctx, obj, func(rctx context.Context) (interface{}, error) {
  9007  		ctx = rctx // use context from middleware stack in children
  9008  		return obj.ID, nil
  9009  	})
  9010  
  9011  	if resTmp == nil {
  9012  		if !graphql.HasFieldError(ctx, fc) {
  9013  			ec.Errorf(ctx, "must not be null")
  9014  		}
  9015  		return graphql.Null
  9016  	}
  9017  	res := resTmp.(string)
  9018  	fc.Result = res
  9019  	return ec.marshalNID2string(ctx, field.Selections, res)
  9020  }
  9021  
  9022  // endregion **************************** field.gotpl *****************************
  9023  
  9024  // region    **************************** input.gotpl *****************************
  9025  
  9026  func (ec *executionContext) unmarshalInputInnerDirectives(ctx context.Context, obj interface{}) (InnerDirectives, error) {
  9027  	var it InnerDirectives
  9028  	var asMap = obj.(map[string]interface{})
  9029  
  9030  	for k, v := range asMap {
  9031  		switch k {
  9032  		case "message":
  9033  			var err error
  9034  			directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalNString2string(ctx, v) }
  9035  			directive1 := func(ctx context.Context) (interface{}, error) {
  9036  				min, err := ec.unmarshalNInt2int(ctx, 1)
  9037  				if err != nil {
  9038  					return nil, err
  9039  				}
  9040  				message, err := ec.unmarshalOString2ᚖstring(ctx, "not valid")
  9041  				if err != nil {
  9042  					return nil, err
  9043  				}
  9044  				if ec.directives.Length == nil {
  9045  					return nil, errors.New("directive length is not implemented")
  9046  				}
  9047  				return ec.directives.Length(ctx, obj, directive0, min, nil, message)
  9048  			}
  9049  
  9050  			tmp, err := directive1(ctx)
  9051  			if err != nil {
  9052  				return it, err
  9053  			}
  9054  			if data, ok := tmp.(string); ok {
  9055  				it.Message = data
  9056  			} else {
  9057  				return it, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  9058  			}
  9059  		}
  9060  	}
  9061  
  9062  	return it, nil
  9063  }
  9064  
  9065  func (ec *executionContext) unmarshalInputInnerInput(ctx context.Context, obj interface{}) (InnerInput, error) {
  9066  	var it InnerInput
  9067  	var asMap = obj.(map[string]interface{})
  9068  
  9069  	for k, v := range asMap {
  9070  		switch k {
  9071  		case "id":
  9072  			var err error
  9073  			it.ID, err = ec.unmarshalNInt2int(ctx, v)
  9074  			if err != nil {
  9075  				return it, err
  9076  			}
  9077  		}
  9078  	}
  9079  
  9080  	return it, nil
  9081  }
  9082  
  9083  func (ec *executionContext) unmarshalInputInputDirectives(ctx context.Context, obj interface{}) (InputDirectives, error) {
  9084  	var it InputDirectives
  9085  	var asMap = obj.(map[string]interface{})
  9086  
  9087  	for k, v := range asMap {
  9088  		switch k {
  9089  		case "text":
  9090  			var err error
  9091  			directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalNString2string(ctx, v) }
  9092  			directive1 := func(ctx context.Context) (interface{}, error) {
  9093  				min, err := ec.unmarshalNInt2int(ctx, 0)
  9094  				if err != nil {
  9095  					return nil, err
  9096  				}
  9097  				max, err := ec.unmarshalOInt2ᚖint(ctx, 7)
  9098  				if err != nil {
  9099  					return nil, err
  9100  				}
  9101  				message, err := ec.unmarshalOString2ᚖstring(ctx, "not valid")
  9102  				if err != nil {
  9103  					return nil, err
  9104  				}
  9105  				if ec.directives.Length == nil {
  9106  					return nil, errors.New("directive length is not implemented")
  9107  				}
  9108  				return ec.directives.Length(ctx, obj, directive0, min, max, message)
  9109  			}
  9110  
  9111  			tmp, err := directive1(ctx)
  9112  			if err != nil {
  9113  				return it, err
  9114  			}
  9115  			if data, ok := tmp.(string); ok {
  9116  				it.Text = data
  9117  			} else {
  9118  				return it, fmt.Errorf(`unexpected type %T from directive, should be string`, tmp)
  9119  			}
  9120  		case "nullableText":
  9121  			var err error
  9122  			directive0 := func(ctx context.Context) (interface{}, error) { return ec.unmarshalOString2ᚖstring(ctx, v) }
  9123  			directive1 := func(ctx context.Context) (interface{}, error) {
  9124  				if ec.directives.ToNull == nil {
  9125  					return nil, errors.New("directive toNull is not implemented")
  9126  				}
  9127  				return ec.directives.ToNull(ctx, obj, directive0)
  9128  			}
  9129  
  9130  			tmp, err := directive1(ctx)
  9131  			if err != nil {
  9132  				return it, err
  9133  			}
  9134  			if data, ok := tmp.(*string); ok {
  9135  				it.NullableText = data
  9136  			} else if tmp == nil {
  9137  				it.NullableText = nil
  9138  			} else {
  9139  				return it, fmt.Errorf(`unexpected type %T from directive, should be *string`, tmp)
  9140  			}
  9141  		case "inner":
  9142  			var err error
  9143  			it.Inner, err = ec.unmarshalNInnerDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx, v)
  9144  			if err != nil {
  9145  				return it, err
  9146  			}
  9147  		case "innerNullable":
  9148  			var err error
  9149  			it.InnerNullable, err = ec.unmarshalOInnerDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx, v)
  9150  			if err != nil {
  9151  				return it, err
  9152  			}
  9153  		case "thirdParty":
  9154  			var err error
  9155  			directive0 := func(ctx context.Context) (interface{}, error) {
  9156  				return ec.unmarshalOThirdParty2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx, v)
  9157  			}
  9158  			directive1 := func(ctx context.Context) (interface{}, error) {
  9159  				min, err := ec.unmarshalNInt2int(ctx, 0)
  9160  				if err != nil {
  9161  					return nil, err
  9162  				}
  9163  				max, err := ec.unmarshalOInt2ᚖint(ctx, 7)
  9164  				if err != nil {
  9165  					return nil, err
  9166  				}
  9167  				if ec.directives.Length == nil {
  9168  					return nil, errors.New("directive length is not implemented")
  9169  				}
  9170  				return ec.directives.Length(ctx, obj, directive0, min, max, nil)
  9171  			}
  9172  
  9173  			tmp, err := directive1(ctx)
  9174  			if err != nil {
  9175  				return it, err
  9176  			}
  9177  			if data, ok := tmp.(*ThirdParty); ok {
  9178  				it.ThirdParty = data
  9179  			} else if tmp == nil {
  9180  				it.ThirdParty = nil
  9181  			} else {
  9182  				return it, fmt.Errorf(`unexpected type %T from directive, should be *git.sr.ht/~sircmpwn/gqlgen/codegen/testserver.ThirdParty`, tmp)
  9183  			}
  9184  		}
  9185  	}
  9186  
  9187  	return it, nil
  9188  }
  9189  
  9190  func (ec *executionContext) unmarshalInputInputWithEnumValue(ctx context.Context, obj interface{}) (InputWithEnumValue, error) {
  9191  	var it InputWithEnumValue
  9192  	var asMap = obj.(map[string]interface{})
  9193  
  9194  	for k, v := range asMap {
  9195  		switch k {
  9196  		case "enum":
  9197  			var err error
  9198  			it.Enum, err = ec.unmarshalNEnumTest2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEnumTest(ctx, v)
  9199  			if err != nil {
  9200  				return it, err
  9201  			}
  9202  		}
  9203  	}
  9204  
  9205  	return it, nil
  9206  }
  9207  
  9208  func (ec *executionContext) unmarshalInputNestedMapInput(ctx context.Context, obj interface{}) (NestedMapInput, error) {
  9209  	var it NestedMapInput
  9210  	var asMap = obj.(map[string]interface{})
  9211  
  9212  	for k, v := range asMap {
  9213  		switch k {
  9214  		case "map":
  9215  			var err error
  9216  			it.Map, err = ec.unmarshalOMapStringInterfaceInput2map(ctx, v)
  9217  			if err != nil {
  9218  				return it, err
  9219  			}
  9220  		}
  9221  	}
  9222  
  9223  	return it, nil
  9224  }
  9225  
  9226  func (ec *executionContext) unmarshalInputOuterInput(ctx context.Context, obj interface{}) (OuterInput, error) {
  9227  	var it OuterInput
  9228  	var asMap = obj.(map[string]interface{})
  9229  
  9230  	for k, v := range asMap {
  9231  		switch k {
  9232  		case "inner":
  9233  			var err error
  9234  			it.Inner, err = ec.unmarshalNInnerInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerInput(ctx, v)
  9235  			if err != nil {
  9236  				return it, err
  9237  			}
  9238  		}
  9239  	}
  9240  
  9241  	return it, nil
  9242  }
  9243  
  9244  func (ec *executionContext) unmarshalInputRecursiveInputSlice(ctx context.Context, obj interface{}) (RecursiveInputSlice, error) {
  9245  	var it RecursiveInputSlice
  9246  	var asMap = obj.(map[string]interface{})
  9247  
  9248  	for k, v := range asMap {
  9249  		switch k {
  9250  		case "self":
  9251  			var err error
  9252  			it.Self, err = ec.unmarshalORecursiveInputSlice2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSliceᚄ(ctx, v)
  9253  			if err != nil {
  9254  				return it, err
  9255  			}
  9256  		}
  9257  	}
  9258  
  9259  	return it, nil
  9260  }
  9261  
  9262  func (ec *executionContext) unmarshalInputValidInput(ctx context.Context, obj interface{}) (ValidInput, error) {
  9263  	var it ValidInput
  9264  	var asMap = obj.(map[string]interface{})
  9265  
  9266  	for k, v := range asMap {
  9267  		switch k {
  9268  		case "break":
  9269  			var err error
  9270  			it.Break, err = ec.unmarshalNString2string(ctx, v)
  9271  			if err != nil {
  9272  				return it, err
  9273  			}
  9274  		case "default":
  9275  			var err error
  9276  			it.Default, err = ec.unmarshalNString2string(ctx, v)
  9277  			if err != nil {
  9278  				return it, err
  9279  			}
  9280  		case "func":
  9281  			var err error
  9282  			it.Func, err = ec.unmarshalNString2string(ctx, v)
  9283  			if err != nil {
  9284  				return it, err
  9285  			}
  9286  		case "interface":
  9287  			var err error
  9288  			it.Interface, err = ec.unmarshalNString2string(ctx, v)
  9289  			if err != nil {
  9290  				return it, err
  9291  			}
  9292  		case "select":
  9293  			var err error
  9294  			it.Select, err = ec.unmarshalNString2string(ctx, v)
  9295  			if err != nil {
  9296  				return it, err
  9297  			}
  9298  		case "case":
  9299  			var err error
  9300  			it.Case, err = ec.unmarshalNString2string(ctx, v)
  9301  			if err != nil {
  9302  				return it, err
  9303  			}
  9304  		case "defer":
  9305  			var err error
  9306  			it.Defer, err = ec.unmarshalNString2string(ctx, v)
  9307  			if err != nil {
  9308  				return it, err
  9309  			}
  9310  		case "go":
  9311  			var err error
  9312  			it.Go, err = ec.unmarshalNString2string(ctx, v)
  9313  			if err != nil {
  9314  				return it, err
  9315  			}
  9316  		case "map":
  9317  			var err error
  9318  			it.Map, err = ec.unmarshalNString2string(ctx, v)
  9319  			if err != nil {
  9320  				return it, err
  9321  			}
  9322  		case "struct":
  9323  			var err error
  9324  			it.Struct, err = ec.unmarshalNString2string(ctx, v)
  9325  			if err != nil {
  9326  				return it, err
  9327  			}
  9328  		case "chan":
  9329  			var err error
  9330  			it.Chan, err = ec.unmarshalNString2string(ctx, v)
  9331  			if err != nil {
  9332  				return it, err
  9333  			}
  9334  		case "else":
  9335  			var err error
  9336  			it.Else, err = ec.unmarshalNString2string(ctx, v)
  9337  			if err != nil {
  9338  				return it, err
  9339  			}
  9340  		case "goto":
  9341  			var err error
  9342  			it.Goto, err = ec.unmarshalNString2string(ctx, v)
  9343  			if err != nil {
  9344  				return it, err
  9345  			}
  9346  		case "package":
  9347  			var err error
  9348  			it.Package, err = ec.unmarshalNString2string(ctx, v)
  9349  			if err != nil {
  9350  				return it, err
  9351  			}
  9352  		case "switch":
  9353  			var err error
  9354  			it.Switch, err = ec.unmarshalNString2string(ctx, v)
  9355  			if err != nil {
  9356  				return it, err
  9357  			}
  9358  		case "const":
  9359  			var err error
  9360  			it.Const, err = ec.unmarshalNString2string(ctx, v)
  9361  			if err != nil {
  9362  				return it, err
  9363  			}
  9364  		case "fallthrough":
  9365  			var err error
  9366  			it.Fallthrough, err = ec.unmarshalNString2string(ctx, v)
  9367  			if err != nil {
  9368  				return it, err
  9369  			}
  9370  		case "if":
  9371  			var err error
  9372  			it.If, err = ec.unmarshalNString2string(ctx, v)
  9373  			if err != nil {
  9374  				return it, err
  9375  			}
  9376  		case "range":
  9377  			var err error
  9378  			it.Range, err = ec.unmarshalNString2string(ctx, v)
  9379  			if err != nil {
  9380  				return it, err
  9381  			}
  9382  		case "type":
  9383  			var err error
  9384  			it.Type, err = ec.unmarshalNString2string(ctx, v)
  9385  			if err != nil {
  9386  				return it, err
  9387  			}
  9388  		case "continue":
  9389  			var err error
  9390  			it.Continue, err = ec.unmarshalNString2string(ctx, v)
  9391  			if err != nil {
  9392  				return it, err
  9393  			}
  9394  		case "for":
  9395  			var err error
  9396  			it.For, err = ec.unmarshalNString2string(ctx, v)
  9397  			if err != nil {
  9398  				return it, err
  9399  			}
  9400  		case "import":
  9401  			var err error
  9402  			it.Import, err = ec.unmarshalNString2string(ctx, v)
  9403  			if err != nil {
  9404  				return it, err
  9405  			}
  9406  		case "return":
  9407  			var err error
  9408  			it.Return, err = ec.unmarshalNString2string(ctx, v)
  9409  			if err != nil {
  9410  				return it, err
  9411  			}
  9412  		case "var":
  9413  			var err error
  9414  			it.Var, err = ec.unmarshalNString2string(ctx, v)
  9415  			if err != nil {
  9416  				return it, err
  9417  			}
  9418  		case "_":
  9419  			var err error
  9420  			it.Underscore, err = ec.unmarshalNString2string(ctx, v)
  9421  			if err != nil {
  9422  				return it, err
  9423  			}
  9424  		}
  9425  	}
  9426  
  9427  	return it, nil
  9428  }
  9429  
  9430  // endregion **************************** input.gotpl *****************************
  9431  
  9432  // region    ************************** interface.gotpl ***************************
  9433  
  9434  func (ec *executionContext) _Animal(ctx context.Context, sel ast.SelectionSet, obj Animal) graphql.Marshaler {
  9435  	switch obj := (obj).(type) {
  9436  	case nil:
  9437  		return graphql.Null
  9438  	case Dog:
  9439  		return ec._Dog(ctx, sel, &obj)
  9440  	case *Dog:
  9441  		if obj == nil {
  9442  			return graphql.Null
  9443  		}
  9444  		return ec._Dog(ctx, sel, obj)
  9445  	case Cat:
  9446  		return ec._Cat(ctx, sel, &obj)
  9447  	case *Cat:
  9448  		if obj == nil {
  9449  			return graphql.Null
  9450  		}
  9451  		return ec._Cat(ctx, sel, obj)
  9452  	default:
  9453  		panic(fmt.Errorf("unexpected type %T", obj))
  9454  	}
  9455  }
  9456  
  9457  func (ec *executionContext) _Content_Child(ctx context.Context, sel ast.SelectionSet, obj ContentChild) graphql.Marshaler {
  9458  	switch obj := (obj).(type) {
  9459  	case nil:
  9460  		return graphql.Null
  9461  	case ContentUser:
  9462  		return ec._Content_User(ctx, sel, &obj)
  9463  	case *ContentUser:
  9464  		if obj == nil {
  9465  			return graphql.Null
  9466  		}
  9467  		return ec._Content_User(ctx, sel, obj)
  9468  	case ContentPost:
  9469  		return ec._Content_Post(ctx, sel, &obj)
  9470  	case *ContentPost:
  9471  		if obj == nil {
  9472  			return graphql.Null
  9473  		}
  9474  		return ec._Content_Post(ctx, sel, obj)
  9475  	default:
  9476  		panic(fmt.Errorf("unexpected type %T", obj))
  9477  	}
  9478  }
  9479  
  9480  func (ec *executionContext) _Node(ctx context.Context, sel ast.SelectionSet, obj Node) graphql.Marshaler {
  9481  	switch obj := (obj).(type) {
  9482  	case nil:
  9483  		return graphql.Null
  9484  	case *ConcreteNodeA:
  9485  		if obj == nil {
  9486  			return graphql.Null
  9487  		}
  9488  		return ec._ConcreteNodeA(ctx, sel, obj)
  9489  	case ConcreteNodeInterface:
  9490  		if obj == nil {
  9491  			return graphql.Null
  9492  		}
  9493  		return ec._ConcreteNodeInterface(ctx, sel, obj)
  9494  	default:
  9495  		panic(fmt.Errorf("unexpected type %T", obj))
  9496  	}
  9497  }
  9498  
  9499  func (ec *executionContext) _Shape(ctx context.Context, sel ast.SelectionSet, obj Shape) graphql.Marshaler {
  9500  	switch obj := (obj).(type) {
  9501  	case nil:
  9502  		return graphql.Null
  9503  	case *Circle:
  9504  		if obj == nil {
  9505  			return graphql.Null
  9506  		}
  9507  		return ec._Circle(ctx, sel, obj)
  9508  	case *Rectangle:
  9509  		if obj == nil {
  9510  			return graphql.Null
  9511  		}
  9512  		return ec._Rectangle(ctx, sel, obj)
  9513  	default:
  9514  		panic(fmt.Errorf("unexpected type %T", obj))
  9515  	}
  9516  }
  9517  
  9518  func (ec *executionContext) _ShapeUnion(ctx context.Context, sel ast.SelectionSet, obj ShapeUnion) graphql.Marshaler {
  9519  	switch obj := (obj).(type) {
  9520  	case nil:
  9521  		return graphql.Null
  9522  	case *Circle:
  9523  		if obj == nil {
  9524  			return graphql.Null
  9525  		}
  9526  		return ec._Circle(ctx, sel, obj)
  9527  	case *Rectangle:
  9528  		if obj == nil {
  9529  			return graphql.Null
  9530  		}
  9531  		return ec._Rectangle(ctx, sel, obj)
  9532  	default:
  9533  		panic(fmt.Errorf("unexpected type %T", obj))
  9534  	}
  9535  }
  9536  
  9537  func (ec *executionContext) _TestUnion(ctx context.Context, sel ast.SelectionSet, obj TestUnion) graphql.Marshaler {
  9538  	switch obj := (obj).(type) {
  9539  	case nil:
  9540  		return graphql.Null
  9541  	case A:
  9542  		return ec._A(ctx, sel, &obj)
  9543  	case *A:
  9544  		if obj == nil {
  9545  			return graphql.Null
  9546  		}
  9547  		return ec._A(ctx, sel, obj)
  9548  	case B:
  9549  		return ec._B(ctx, sel, &obj)
  9550  	case *B:
  9551  		if obj == nil {
  9552  			return graphql.Null
  9553  		}
  9554  		return ec._B(ctx, sel, obj)
  9555  	default:
  9556  		panic(fmt.Errorf("unexpected type %T", obj))
  9557  	}
  9558  }
  9559  
  9560  // endregion ************************** interface.gotpl ***************************
  9561  
  9562  // region    **************************** object.gotpl ****************************
  9563  
  9564  var aImplementors = []string{"A", "TestUnion"}
  9565  
  9566  func (ec *executionContext) _A(ctx context.Context, sel ast.SelectionSet, obj *A) graphql.Marshaler {
  9567  	fields := graphql.CollectFields(ec.OperationContext, sel, aImplementors)
  9568  
  9569  	out := graphql.NewFieldSet(fields)
  9570  	var invalids uint32
  9571  	for i, field := range fields {
  9572  		switch field.Name {
  9573  		case "__typename":
  9574  			out.Values[i] = graphql.MarshalString("A")
  9575  		case "id":
  9576  			out.Values[i] = ec._A_id(ctx, field, obj)
  9577  			if out.Values[i] == graphql.Null {
  9578  				invalids++
  9579  			}
  9580  		default:
  9581  			panic("unknown field " + strconv.Quote(field.Name))
  9582  		}
  9583  	}
  9584  	out.Dispatch()
  9585  	if invalids > 0 {
  9586  		return graphql.Null
  9587  	}
  9588  	return out
  9589  }
  9590  
  9591  var aItImplementors = []string{"AIt"}
  9592  
  9593  func (ec *executionContext) _AIt(ctx context.Context, sel ast.SelectionSet, obj *AIt) graphql.Marshaler {
  9594  	fields := graphql.CollectFields(ec.OperationContext, sel, aItImplementors)
  9595  
  9596  	out := graphql.NewFieldSet(fields)
  9597  	var invalids uint32
  9598  	for i, field := range fields {
  9599  		switch field.Name {
  9600  		case "__typename":
  9601  			out.Values[i] = graphql.MarshalString("AIt")
  9602  		case "id":
  9603  			out.Values[i] = ec._AIt_id(ctx, field, obj)
  9604  			if out.Values[i] == graphql.Null {
  9605  				invalids++
  9606  			}
  9607  		default:
  9608  			panic("unknown field " + strconv.Quote(field.Name))
  9609  		}
  9610  	}
  9611  	out.Dispatch()
  9612  	if invalids > 0 {
  9613  		return graphql.Null
  9614  	}
  9615  	return out
  9616  }
  9617  
  9618  var abItImplementors = []string{"AbIt"}
  9619  
  9620  func (ec *executionContext) _AbIt(ctx context.Context, sel ast.SelectionSet, obj *AbIt) graphql.Marshaler {
  9621  	fields := graphql.CollectFields(ec.OperationContext, sel, abItImplementors)
  9622  
  9623  	out := graphql.NewFieldSet(fields)
  9624  	var invalids uint32
  9625  	for i, field := range fields {
  9626  		switch field.Name {
  9627  		case "__typename":
  9628  			out.Values[i] = graphql.MarshalString("AbIt")
  9629  		case "id":
  9630  			out.Values[i] = ec._AbIt_id(ctx, field, obj)
  9631  			if out.Values[i] == graphql.Null {
  9632  				invalids++
  9633  			}
  9634  		default:
  9635  			panic("unknown field " + strconv.Quote(field.Name))
  9636  		}
  9637  	}
  9638  	out.Dispatch()
  9639  	if invalids > 0 {
  9640  		return graphql.Null
  9641  	}
  9642  	return out
  9643  }
  9644  
  9645  var autobindImplementors = []string{"Autobind"}
  9646  
  9647  func (ec *executionContext) _Autobind(ctx context.Context, sel ast.SelectionSet, obj *Autobind) graphql.Marshaler {
  9648  	fields := graphql.CollectFields(ec.OperationContext, sel, autobindImplementors)
  9649  
  9650  	out := graphql.NewFieldSet(fields)
  9651  	var invalids uint32
  9652  	for i, field := range fields {
  9653  		switch field.Name {
  9654  		case "__typename":
  9655  			out.Values[i] = graphql.MarshalString("Autobind")
  9656  		case "int":
  9657  			out.Values[i] = ec._Autobind_int(ctx, field, obj)
  9658  			if out.Values[i] == graphql.Null {
  9659  				invalids++
  9660  			}
  9661  		case "int32":
  9662  			out.Values[i] = ec._Autobind_int32(ctx, field, obj)
  9663  			if out.Values[i] == graphql.Null {
  9664  				invalids++
  9665  			}
  9666  		case "int64":
  9667  			out.Values[i] = ec._Autobind_int64(ctx, field, obj)
  9668  			if out.Values[i] == graphql.Null {
  9669  				invalids++
  9670  			}
  9671  		case "idStr":
  9672  			out.Values[i] = ec._Autobind_idStr(ctx, field, obj)
  9673  			if out.Values[i] == graphql.Null {
  9674  				invalids++
  9675  			}
  9676  		case "idInt":
  9677  			out.Values[i] = ec._Autobind_idInt(ctx, field, obj)
  9678  			if out.Values[i] == graphql.Null {
  9679  				invalids++
  9680  			}
  9681  		default:
  9682  			panic("unknown field " + strconv.Quote(field.Name))
  9683  		}
  9684  	}
  9685  	out.Dispatch()
  9686  	if invalids > 0 {
  9687  		return graphql.Null
  9688  	}
  9689  	return out
  9690  }
  9691  
  9692  var bImplementors = []string{"B", "TestUnion"}
  9693  
  9694  func (ec *executionContext) _B(ctx context.Context, sel ast.SelectionSet, obj *B) graphql.Marshaler {
  9695  	fields := graphql.CollectFields(ec.OperationContext, sel, bImplementors)
  9696  
  9697  	out := graphql.NewFieldSet(fields)
  9698  	var invalids uint32
  9699  	for i, field := range fields {
  9700  		switch field.Name {
  9701  		case "__typename":
  9702  			out.Values[i] = graphql.MarshalString("B")
  9703  		case "id":
  9704  			out.Values[i] = ec._B_id(ctx, field, obj)
  9705  			if out.Values[i] == graphql.Null {
  9706  				invalids++
  9707  			}
  9708  		default:
  9709  			panic("unknown field " + strconv.Quote(field.Name))
  9710  		}
  9711  	}
  9712  	out.Dispatch()
  9713  	if invalids > 0 {
  9714  		return graphql.Null
  9715  	}
  9716  	return out
  9717  }
  9718  
  9719  var backedByInterfaceImplementors = []string{"BackedByInterface"}
  9720  
  9721  func (ec *executionContext) _BackedByInterface(ctx context.Context, sel ast.SelectionSet, obj BackedByInterface) graphql.Marshaler {
  9722  	fields := graphql.CollectFields(ec.OperationContext, sel, backedByInterfaceImplementors)
  9723  
  9724  	out := graphql.NewFieldSet(fields)
  9725  	var invalids uint32
  9726  	for i, field := range fields {
  9727  		switch field.Name {
  9728  		case "__typename":
  9729  			out.Values[i] = graphql.MarshalString("BackedByInterface")
  9730  		case "id":
  9731  			field := field
  9732  			out.Concurrently(i, func() (res graphql.Marshaler) {
  9733  				defer func() {
  9734  					if r := recover(); r != nil {
  9735  						ec.Error(ctx, ec.Recover(ctx, r))
  9736  					}
  9737  				}()
  9738  				res = ec._BackedByInterface_id(ctx, field, obj)
  9739  				if res == graphql.Null {
  9740  					atomic.AddUint32(&invalids, 1)
  9741  				}
  9742  				return res
  9743  			})
  9744  		case "thisShouldBind":
  9745  			out.Values[i] = ec._BackedByInterface_thisShouldBind(ctx, field, obj)
  9746  			if out.Values[i] == graphql.Null {
  9747  				atomic.AddUint32(&invalids, 1)
  9748  			}
  9749  		case "thisShouldBindWithError":
  9750  			out.Values[i] = ec._BackedByInterface_thisShouldBindWithError(ctx, field, obj)
  9751  			if out.Values[i] == graphql.Null {
  9752  				atomic.AddUint32(&invalids, 1)
  9753  			}
  9754  		default:
  9755  			panic("unknown field " + strconv.Quote(field.Name))
  9756  		}
  9757  	}
  9758  	out.Dispatch()
  9759  	if invalids > 0 {
  9760  		return graphql.Null
  9761  	}
  9762  	return out
  9763  }
  9764  
  9765  var catImplementors = []string{"Cat", "Animal"}
  9766  
  9767  func (ec *executionContext) _Cat(ctx context.Context, sel ast.SelectionSet, obj *Cat) graphql.Marshaler {
  9768  	fields := graphql.CollectFields(ec.OperationContext, sel, catImplementors)
  9769  
  9770  	out := graphql.NewFieldSet(fields)
  9771  	var invalids uint32
  9772  	for i, field := range fields {
  9773  		switch field.Name {
  9774  		case "__typename":
  9775  			out.Values[i] = graphql.MarshalString("Cat")
  9776  		case "species":
  9777  			out.Values[i] = ec._Cat_species(ctx, field, obj)
  9778  			if out.Values[i] == graphql.Null {
  9779  				invalids++
  9780  			}
  9781  		case "catBreed":
  9782  			out.Values[i] = ec._Cat_catBreed(ctx, field, obj)
  9783  			if out.Values[i] == graphql.Null {
  9784  				invalids++
  9785  			}
  9786  		default:
  9787  			panic("unknown field " + strconv.Quote(field.Name))
  9788  		}
  9789  	}
  9790  	out.Dispatch()
  9791  	if invalids > 0 {
  9792  		return graphql.Null
  9793  	}
  9794  	return out
  9795  }
  9796  
  9797  var checkIssue896Implementors = []string{"CheckIssue896"}
  9798  
  9799  func (ec *executionContext) _CheckIssue896(ctx context.Context, sel ast.SelectionSet, obj *CheckIssue896) graphql.Marshaler {
  9800  	fields := graphql.CollectFields(ec.OperationContext, sel, checkIssue896Implementors)
  9801  
  9802  	out := graphql.NewFieldSet(fields)
  9803  	var invalids uint32
  9804  	for i, field := range fields {
  9805  		switch field.Name {
  9806  		case "__typename":
  9807  			out.Values[i] = graphql.MarshalString("CheckIssue896")
  9808  		case "id":
  9809  			out.Values[i] = ec._CheckIssue896_id(ctx, field, obj)
  9810  		default:
  9811  			panic("unknown field " + strconv.Quote(field.Name))
  9812  		}
  9813  	}
  9814  	out.Dispatch()
  9815  	if invalids > 0 {
  9816  		return graphql.Null
  9817  	}
  9818  	return out
  9819  }
  9820  
  9821  var circleImplementors = []string{"Circle", "Shape", "ShapeUnion"}
  9822  
  9823  func (ec *executionContext) _Circle(ctx context.Context, sel ast.SelectionSet, obj *Circle) graphql.Marshaler {
  9824  	fields := graphql.CollectFields(ec.OperationContext, sel, circleImplementors)
  9825  
  9826  	out := graphql.NewFieldSet(fields)
  9827  	var invalids uint32
  9828  	for i, field := range fields {
  9829  		switch field.Name {
  9830  		case "__typename":
  9831  			out.Values[i] = graphql.MarshalString("Circle")
  9832  		case "radius":
  9833  			out.Values[i] = ec._Circle_radius(ctx, field, obj)
  9834  		case "area":
  9835  			out.Values[i] = ec._Circle_area(ctx, field, obj)
  9836  		default:
  9837  			panic("unknown field " + strconv.Quote(field.Name))
  9838  		}
  9839  	}
  9840  	out.Dispatch()
  9841  	if invalids > 0 {
  9842  		return graphql.Null
  9843  	}
  9844  	return out
  9845  }
  9846  
  9847  var concreteNodeAImplementors = []string{"ConcreteNodeA", "Node"}
  9848  
  9849  func (ec *executionContext) _ConcreteNodeA(ctx context.Context, sel ast.SelectionSet, obj *ConcreteNodeA) graphql.Marshaler {
  9850  	fields := graphql.CollectFields(ec.OperationContext, sel, concreteNodeAImplementors)
  9851  
  9852  	out := graphql.NewFieldSet(fields)
  9853  	var invalids uint32
  9854  	for i, field := range fields {
  9855  		switch field.Name {
  9856  		case "__typename":
  9857  			out.Values[i] = graphql.MarshalString("ConcreteNodeA")
  9858  		case "id":
  9859  			out.Values[i] = ec._ConcreteNodeA_id(ctx, field, obj)
  9860  			if out.Values[i] == graphql.Null {
  9861  				invalids++
  9862  			}
  9863  		case "child":
  9864  			out.Values[i] = ec._ConcreteNodeA_child(ctx, field, obj)
  9865  			if out.Values[i] == graphql.Null {
  9866  				invalids++
  9867  			}
  9868  		case "name":
  9869  			out.Values[i] = ec._ConcreteNodeA_name(ctx, field, obj)
  9870  			if out.Values[i] == graphql.Null {
  9871  				invalids++
  9872  			}
  9873  		default:
  9874  			panic("unknown field " + strconv.Quote(field.Name))
  9875  		}
  9876  	}
  9877  	out.Dispatch()
  9878  	if invalids > 0 {
  9879  		return graphql.Null
  9880  	}
  9881  	return out
  9882  }
  9883  
  9884  var concreteNodeInterfaceImplementors = []string{"ConcreteNodeInterface", "Node"}
  9885  
  9886  func (ec *executionContext) _ConcreteNodeInterface(ctx context.Context, sel ast.SelectionSet, obj ConcreteNodeInterface) graphql.Marshaler {
  9887  	fields := graphql.CollectFields(ec.OperationContext, sel, concreteNodeInterfaceImplementors)
  9888  
  9889  	out := graphql.NewFieldSet(fields)
  9890  	var invalids uint32
  9891  	for i, field := range fields {
  9892  		switch field.Name {
  9893  		case "__typename":
  9894  			out.Values[i] = graphql.MarshalString("ConcreteNodeInterface")
  9895  		case "id":
  9896  			out.Values[i] = ec._ConcreteNodeInterface_id(ctx, field, obj)
  9897  			if out.Values[i] == graphql.Null {
  9898  				invalids++
  9899  			}
  9900  		case "child":
  9901  			out.Values[i] = ec._ConcreteNodeInterface_child(ctx, field, obj)
  9902  			if out.Values[i] == graphql.Null {
  9903  				invalids++
  9904  			}
  9905  		default:
  9906  			panic("unknown field " + strconv.Quote(field.Name))
  9907  		}
  9908  	}
  9909  	out.Dispatch()
  9910  	if invalids > 0 {
  9911  		return graphql.Null
  9912  	}
  9913  	return out
  9914  }
  9915  
  9916  var content_PostImplementors = []string{"Content_Post", "Content_Child"}
  9917  
  9918  func (ec *executionContext) _Content_Post(ctx context.Context, sel ast.SelectionSet, obj *ContentPost) graphql.Marshaler {
  9919  	fields := graphql.CollectFields(ec.OperationContext, sel, content_PostImplementors)
  9920  
  9921  	out := graphql.NewFieldSet(fields)
  9922  	var invalids uint32
  9923  	for i, field := range fields {
  9924  		switch field.Name {
  9925  		case "__typename":
  9926  			out.Values[i] = graphql.MarshalString("Content_Post")
  9927  		case "foo":
  9928  			out.Values[i] = ec._Content_Post_foo(ctx, field, obj)
  9929  		default:
  9930  			panic("unknown field " + strconv.Quote(field.Name))
  9931  		}
  9932  	}
  9933  	out.Dispatch()
  9934  	if invalids > 0 {
  9935  		return graphql.Null
  9936  	}
  9937  	return out
  9938  }
  9939  
  9940  var content_UserImplementors = []string{"Content_User", "Content_Child"}
  9941  
  9942  func (ec *executionContext) _Content_User(ctx context.Context, sel ast.SelectionSet, obj *ContentUser) graphql.Marshaler {
  9943  	fields := graphql.CollectFields(ec.OperationContext, sel, content_UserImplementors)
  9944  
  9945  	out := graphql.NewFieldSet(fields)
  9946  	var invalids uint32
  9947  	for i, field := range fields {
  9948  		switch field.Name {
  9949  		case "__typename":
  9950  			out.Values[i] = graphql.MarshalString("Content_User")
  9951  		case "foo":
  9952  			out.Values[i] = ec._Content_User_foo(ctx, field, obj)
  9953  		default:
  9954  			panic("unknown field " + strconv.Quote(field.Name))
  9955  		}
  9956  	}
  9957  	out.Dispatch()
  9958  	if invalids > 0 {
  9959  		return graphql.Null
  9960  	}
  9961  	return out
  9962  }
  9963  
  9964  var dogImplementors = []string{"Dog", "Animal"}
  9965  
  9966  func (ec *executionContext) _Dog(ctx context.Context, sel ast.SelectionSet, obj *Dog) graphql.Marshaler {
  9967  	fields := graphql.CollectFields(ec.OperationContext, sel, dogImplementors)
  9968  
  9969  	out := graphql.NewFieldSet(fields)
  9970  	var invalids uint32
  9971  	for i, field := range fields {
  9972  		switch field.Name {
  9973  		case "__typename":
  9974  			out.Values[i] = graphql.MarshalString("Dog")
  9975  		case "species":
  9976  			out.Values[i] = ec._Dog_species(ctx, field, obj)
  9977  			if out.Values[i] == graphql.Null {
  9978  				invalids++
  9979  			}
  9980  		case "dogBreed":
  9981  			out.Values[i] = ec._Dog_dogBreed(ctx, field, obj)
  9982  			if out.Values[i] == graphql.Null {
  9983  				invalids++
  9984  			}
  9985  		default:
  9986  			panic("unknown field " + strconv.Quote(field.Name))
  9987  		}
  9988  	}
  9989  	out.Dispatch()
  9990  	if invalids > 0 {
  9991  		return graphql.Null
  9992  	}
  9993  	return out
  9994  }
  9995  
  9996  var embeddedCase1Implementors = []string{"EmbeddedCase1"}
  9997  
  9998  func (ec *executionContext) _EmbeddedCase1(ctx context.Context, sel ast.SelectionSet, obj *EmbeddedCase1) graphql.Marshaler {
  9999  	fields := graphql.CollectFields(ec.OperationContext, sel, embeddedCase1Implementors)
 10000  
 10001  	out := graphql.NewFieldSet(fields)
 10002  	var invalids uint32
 10003  	for i, field := range fields {
 10004  		switch field.Name {
 10005  		case "__typename":
 10006  			out.Values[i] = graphql.MarshalString("EmbeddedCase1")
 10007  		case "exportedEmbeddedPointerExportedMethod":
 10008  			out.Values[i] = ec._EmbeddedCase1_exportedEmbeddedPointerExportedMethod(ctx, field, obj)
 10009  			if out.Values[i] == graphql.Null {
 10010  				invalids++
 10011  			}
 10012  		default:
 10013  			panic("unknown field " + strconv.Quote(field.Name))
 10014  		}
 10015  	}
 10016  	out.Dispatch()
 10017  	if invalids > 0 {
 10018  		return graphql.Null
 10019  	}
 10020  	return out
 10021  }
 10022  
 10023  var embeddedCase2Implementors = []string{"EmbeddedCase2"}
 10024  
 10025  func (ec *executionContext) _EmbeddedCase2(ctx context.Context, sel ast.SelectionSet, obj *EmbeddedCase2) graphql.Marshaler {
 10026  	fields := graphql.CollectFields(ec.OperationContext, sel, embeddedCase2Implementors)
 10027  
 10028  	out := graphql.NewFieldSet(fields)
 10029  	var invalids uint32
 10030  	for i, field := range fields {
 10031  		switch field.Name {
 10032  		case "__typename":
 10033  			out.Values[i] = graphql.MarshalString("EmbeddedCase2")
 10034  		case "unexportedEmbeddedPointerExportedMethod":
 10035  			out.Values[i] = ec._EmbeddedCase2_unexportedEmbeddedPointerExportedMethod(ctx, field, obj)
 10036  			if out.Values[i] == graphql.Null {
 10037  				invalids++
 10038  			}
 10039  		default:
 10040  			panic("unknown field " + strconv.Quote(field.Name))
 10041  		}
 10042  	}
 10043  	out.Dispatch()
 10044  	if invalids > 0 {
 10045  		return graphql.Null
 10046  	}
 10047  	return out
 10048  }
 10049  
 10050  var embeddedCase3Implementors = []string{"EmbeddedCase3"}
 10051  
 10052  func (ec *executionContext) _EmbeddedCase3(ctx context.Context, sel ast.SelectionSet, obj *EmbeddedCase3) graphql.Marshaler {
 10053  	fields := graphql.CollectFields(ec.OperationContext, sel, embeddedCase3Implementors)
 10054  
 10055  	out := graphql.NewFieldSet(fields)
 10056  	var invalids uint32
 10057  	for i, field := range fields {
 10058  		switch field.Name {
 10059  		case "__typename":
 10060  			out.Values[i] = graphql.MarshalString("EmbeddedCase3")
 10061  		case "unexportedEmbeddedInterfaceExportedMethod":
 10062  			out.Values[i] = ec._EmbeddedCase3_unexportedEmbeddedInterfaceExportedMethod(ctx, field, obj)
 10063  			if out.Values[i] == graphql.Null {
 10064  				invalids++
 10065  			}
 10066  		default:
 10067  			panic("unknown field " + strconv.Quote(field.Name))
 10068  		}
 10069  	}
 10070  	out.Dispatch()
 10071  	if invalids > 0 {
 10072  		return graphql.Null
 10073  	}
 10074  	return out
 10075  }
 10076  
 10077  var embeddedDefaultScalarImplementors = []string{"EmbeddedDefaultScalar"}
 10078  
 10079  func (ec *executionContext) _EmbeddedDefaultScalar(ctx context.Context, sel ast.SelectionSet, obj *EmbeddedDefaultScalar) graphql.Marshaler {
 10080  	fields := graphql.CollectFields(ec.OperationContext, sel, embeddedDefaultScalarImplementors)
 10081  
 10082  	out := graphql.NewFieldSet(fields)
 10083  	var invalids uint32
 10084  	for i, field := range fields {
 10085  		switch field.Name {
 10086  		case "__typename":
 10087  			out.Values[i] = graphql.MarshalString("EmbeddedDefaultScalar")
 10088  		case "value":
 10089  			out.Values[i] = ec._EmbeddedDefaultScalar_value(ctx, field, obj)
 10090  		default:
 10091  			panic("unknown field " + strconv.Quote(field.Name))
 10092  		}
 10093  	}
 10094  	out.Dispatch()
 10095  	if invalids > 0 {
 10096  		return graphql.Null
 10097  	}
 10098  	return out
 10099  }
 10100  
 10101  var embeddedPointerImplementors = []string{"EmbeddedPointer"}
 10102  
 10103  func (ec *executionContext) _EmbeddedPointer(ctx context.Context, sel ast.SelectionSet, obj *EmbeddedPointerModel) graphql.Marshaler {
 10104  	fields := graphql.CollectFields(ec.OperationContext, sel, embeddedPointerImplementors)
 10105  
 10106  	out := graphql.NewFieldSet(fields)
 10107  	var invalids uint32
 10108  	for i, field := range fields {
 10109  		switch field.Name {
 10110  		case "__typename":
 10111  			out.Values[i] = graphql.MarshalString("EmbeddedPointer")
 10112  		case "ID":
 10113  			out.Values[i] = ec._EmbeddedPointer_ID(ctx, field, obj)
 10114  		case "Title":
 10115  			out.Values[i] = ec._EmbeddedPointer_Title(ctx, field, obj)
 10116  		default:
 10117  			panic("unknown field " + strconv.Quote(field.Name))
 10118  		}
 10119  	}
 10120  	out.Dispatch()
 10121  	if invalids > 0 {
 10122  		return graphql.Null
 10123  	}
 10124  	return out
 10125  }
 10126  
 10127  var errorImplementors = []string{"Error"}
 10128  
 10129  func (ec *executionContext) _Error(ctx context.Context, sel ast.SelectionSet, obj *Error) graphql.Marshaler {
 10130  	fields := graphql.CollectFields(ec.OperationContext, sel, errorImplementors)
 10131  
 10132  	out := graphql.NewFieldSet(fields)
 10133  	var invalids uint32
 10134  	for i, field := range fields {
 10135  		switch field.Name {
 10136  		case "__typename":
 10137  			out.Values[i] = graphql.MarshalString("Error")
 10138  		case "id":
 10139  			out.Values[i] = ec._Error_id(ctx, field, obj)
 10140  			if out.Values[i] == graphql.Null {
 10141  				invalids++
 10142  			}
 10143  		case "errorOnNonRequiredField":
 10144  			out.Values[i] = ec._Error_errorOnNonRequiredField(ctx, field, obj)
 10145  		case "errorOnRequiredField":
 10146  			out.Values[i] = ec._Error_errorOnRequiredField(ctx, field, obj)
 10147  			if out.Values[i] == graphql.Null {
 10148  				invalids++
 10149  			}
 10150  		case "nilOnRequiredField":
 10151  			out.Values[i] = ec._Error_nilOnRequiredField(ctx, field, obj)
 10152  			if out.Values[i] == graphql.Null {
 10153  				invalids++
 10154  			}
 10155  		default:
 10156  			panic("unknown field " + strconv.Quote(field.Name))
 10157  		}
 10158  	}
 10159  	out.Dispatch()
 10160  	if invalids > 0 {
 10161  		return graphql.Null
 10162  	}
 10163  	return out
 10164  }
 10165  
 10166  var errorsImplementors = []string{"Errors"}
 10167  
 10168  func (ec *executionContext) _Errors(ctx context.Context, sel ast.SelectionSet, obj *Errors) graphql.Marshaler {
 10169  	fields := graphql.CollectFields(ec.OperationContext, sel, errorsImplementors)
 10170  
 10171  	out := graphql.NewFieldSet(fields)
 10172  	var invalids uint32
 10173  	for i, field := range fields {
 10174  		switch field.Name {
 10175  		case "__typename":
 10176  			out.Values[i] = graphql.MarshalString("Errors")
 10177  		case "a":
 10178  			field := field
 10179  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10180  				defer func() {
 10181  					if r := recover(); r != nil {
 10182  						ec.Error(ctx, ec.Recover(ctx, r))
 10183  					}
 10184  				}()
 10185  				res = ec._Errors_a(ctx, field, obj)
 10186  				if res == graphql.Null {
 10187  					atomic.AddUint32(&invalids, 1)
 10188  				}
 10189  				return res
 10190  			})
 10191  		case "b":
 10192  			field := field
 10193  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10194  				defer func() {
 10195  					if r := recover(); r != nil {
 10196  						ec.Error(ctx, ec.Recover(ctx, r))
 10197  					}
 10198  				}()
 10199  				res = ec._Errors_b(ctx, field, obj)
 10200  				if res == graphql.Null {
 10201  					atomic.AddUint32(&invalids, 1)
 10202  				}
 10203  				return res
 10204  			})
 10205  		case "c":
 10206  			field := field
 10207  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10208  				defer func() {
 10209  					if r := recover(); r != nil {
 10210  						ec.Error(ctx, ec.Recover(ctx, r))
 10211  					}
 10212  				}()
 10213  				res = ec._Errors_c(ctx, field, obj)
 10214  				if res == graphql.Null {
 10215  					atomic.AddUint32(&invalids, 1)
 10216  				}
 10217  				return res
 10218  			})
 10219  		case "d":
 10220  			field := field
 10221  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10222  				defer func() {
 10223  					if r := recover(); r != nil {
 10224  						ec.Error(ctx, ec.Recover(ctx, r))
 10225  					}
 10226  				}()
 10227  				res = ec._Errors_d(ctx, field, obj)
 10228  				if res == graphql.Null {
 10229  					atomic.AddUint32(&invalids, 1)
 10230  				}
 10231  				return res
 10232  			})
 10233  		case "e":
 10234  			field := field
 10235  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10236  				defer func() {
 10237  					if r := recover(); r != nil {
 10238  						ec.Error(ctx, ec.Recover(ctx, r))
 10239  					}
 10240  				}()
 10241  				res = ec._Errors_e(ctx, field, obj)
 10242  				if res == graphql.Null {
 10243  					atomic.AddUint32(&invalids, 1)
 10244  				}
 10245  				return res
 10246  			})
 10247  		default:
 10248  			panic("unknown field " + strconv.Quote(field.Name))
 10249  		}
 10250  	}
 10251  	out.Dispatch()
 10252  	if invalids > 0 {
 10253  		return graphql.Null
 10254  	}
 10255  	return out
 10256  }
 10257  
 10258  var forcedResolverImplementors = []string{"ForcedResolver"}
 10259  
 10260  func (ec *executionContext) _ForcedResolver(ctx context.Context, sel ast.SelectionSet, obj *ForcedResolver) graphql.Marshaler {
 10261  	fields := graphql.CollectFields(ec.OperationContext, sel, forcedResolverImplementors)
 10262  
 10263  	out := graphql.NewFieldSet(fields)
 10264  	var invalids uint32
 10265  	for i, field := range fields {
 10266  		switch field.Name {
 10267  		case "__typename":
 10268  			out.Values[i] = graphql.MarshalString("ForcedResolver")
 10269  		case "field":
 10270  			field := field
 10271  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10272  				defer func() {
 10273  					if r := recover(); r != nil {
 10274  						ec.Error(ctx, ec.Recover(ctx, r))
 10275  					}
 10276  				}()
 10277  				res = ec._ForcedResolver_field(ctx, field, obj)
 10278  				return res
 10279  			})
 10280  		default:
 10281  			panic("unknown field " + strconv.Quote(field.Name))
 10282  		}
 10283  	}
 10284  	out.Dispatch()
 10285  	if invalids > 0 {
 10286  		return graphql.Null
 10287  	}
 10288  	return out
 10289  }
 10290  
 10291  var innerObjectImplementors = []string{"InnerObject"}
 10292  
 10293  func (ec *executionContext) _InnerObject(ctx context.Context, sel ast.SelectionSet, obj *InnerObject) graphql.Marshaler {
 10294  	fields := graphql.CollectFields(ec.OperationContext, sel, innerObjectImplementors)
 10295  
 10296  	out := graphql.NewFieldSet(fields)
 10297  	var invalids uint32
 10298  	for i, field := range fields {
 10299  		switch field.Name {
 10300  		case "__typename":
 10301  			out.Values[i] = graphql.MarshalString("InnerObject")
 10302  		case "id":
 10303  			out.Values[i] = ec._InnerObject_id(ctx, field, obj)
 10304  			if out.Values[i] == graphql.Null {
 10305  				invalids++
 10306  			}
 10307  		default:
 10308  			panic("unknown field " + strconv.Quote(field.Name))
 10309  		}
 10310  	}
 10311  	out.Dispatch()
 10312  	if invalids > 0 {
 10313  		return graphql.Null
 10314  	}
 10315  	return out
 10316  }
 10317  
 10318  var invalidIdentifierImplementors = []string{"InvalidIdentifier"}
 10319  
 10320  func (ec *executionContext) _InvalidIdentifier(ctx context.Context, sel ast.SelectionSet, obj *invalid_packagename.InvalidIdentifier) graphql.Marshaler {
 10321  	fields := graphql.CollectFields(ec.OperationContext, sel, invalidIdentifierImplementors)
 10322  
 10323  	out := graphql.NewFieldSet(fields)
 10324  	var invalids uint32
 10325  	for i, field := range fields {
 10326  		switch field.Name {
 10327  		case "__typename":
 10328  			out.Values[i] = graphql.MarshalString("InvalidIdentifier")
 10329  		case "id":
 10330  			out.Values[i] = ec._InvalidIdentifier_id(ctx, field, obj)
 10331  			if out.Values[i] == graphql.Null {
 10332  				invalids++
 10333  			}
 10334  		default:
 10335  			panic("unknown field " + strconv.Quote(field.Name))
 10336  		}
 10337  	}
 10338  	out.Dispatch()
 10339  	if invalids > 0 {
 10340  		return graphql.Null
 10341  	}
 10342  	return out
 10343  }
 10344  
 10345  var itImplementors = []string{"It"}
 10346  
 10347  func (ec *executionContext) _It(ctx context.Context, sel ast.SelectionSet, obj *introspection1.It) graphql.Marshaler {
 10348  	fields := graphql.CollectFields(ec.OperationContext, sel, itImplementors)
 10349  
 10350  	out := graphql.NewFieldSet(fields)
 10351  	var invalids uint32
 10352  	for i, field := range fields {
 10353  		switch field.Name {
 10354  		case "__typename":
 10355  			out.Values[i] = graphql.MarshalString("It")
 10356  		case "id":
 10357  			out.Values[i] = ec._It_id(ctx, field, obj)
 10358  			if out.Values[i] == graphql.Null {
 10359  				invalids++
 10360  			}
 10361  		default:
 10362  			panic("unknown field " + strconv.Quote(field.Name))
 10363  		}
 10364  	}
 10365  	out.Dispatch()
 10366  	if invalids > 0 {
 10367  		return graphql.Null
 10368  	}
 10369  	return out
 10370  }
 10371  
 10372  var loopAImplementors = []string{"LoopA"}
 10373  
 10374  func (ec *executionContext) _LoopA(ctx context.Context, sel ast.SelectionSet, obj *LoopA) graphql.Marshaler {
 10375  	fields := graphql.CollectFields(ec.OperationContext, sel, loopAImplementors)
 10376  
 10377  	out := graphql.NewFieldSet(fields)
 10378  	var invalids uint32
 10379  	for i, field := range fields {
 10380  		switch field.Name {
 10381  		case "__typename":
 10382  			out.Values[i] = graphql.MarshalString("LoopA")
 10383  		case "b":
 10384  			out.Values[i] = ec._LoopA_b(ctx, field, obj)
 10385  			if out.Values[i] == graphql.Null {
 10386  				invalids++
 10387  			}
 10388  		default:
 10389  			panic("unknown field " + strconv.Quote(field.Name))
 10390  		}
 10391  	}
 10392  	out.Dispatch()
 10393  	if invalids > 0 {
 10394  		return graphql.Null
 10395  	}
 10396  	return out
 10397  }
 10398  
 10399  var loopBImplementors = []string{"LoopB"}
 10400  
 10401  func (ec *executionContext) _LoopB(ctx context.Context, sel ast.SelectionSet, obj *LoopB) graphql.Marshaler {
 10402  	fields := graphql.CollectFields(ec.OperationContext, sel, loopBImplementors)
 10403  
 10404  	out := graphql.NewFieldSet(fields)
 10405  	var invalids uint32
 10406  	for i, field := range fields {
 10407  		switch field.Name {
 10408  		case "__typename":
 10409  			out.Values[i] = graphql.MarshalString("LoopB")
 10410  		case "a":
 10411  			out.Values[i] = ec._LoopB_a(ctx, field, obj)
 10412  			if out.Values[i] == graphql.Null {
 10413  				invalids++
 10414  			}
 10415  		default:
 10416  			panic("unknown field " + strconv.Quote(field.Name))
 10417  		}
 10418  	}
 10419  	out.Dispatch()
 10420  	if invalids > 0 {
 10421  		return graphql.Null
 10422  	}
 10423  	return out
 10424  }
 10425  
 10426  var mapImplementors = []string{"Map"}
 10427  
 10428  func (ec *executionContext) _Map(ctx context.Context, sel ast.SelectionSet, obj *Map) graphql.Marshaler {
 10429  	fields := graphql.CollectFields(ec.OperationContext, sel, mapImplementors)
 10430  
 10431  	out := graphql.NewFieldSet(fields)
 10432  	var invalids uint32
 10433  	for i, field := range fields {
 10434  		switch field.Name {
 10435  		case "__typename":
 10436  			out.Values[i] = graphql.MarshalString("Map")
 10437  		case "id":
 10438  			out.Values[i] = ec._Map_id(ctx, field, obj)
 10439  			if out.Values[i] == graphql.Null {
 10440  				invalids++
 10441  			}
 10442  		default:
 10443  			panic("unknown field " + strconv.Quote(field.Name))
 10444  		}
 10445  	}
 10446  	out.Dispatch()
 10447  	if invalids > 0 {
 10448  		return graphql.Null
 10449  	}
 10450  	return out
 10451  }
 10452  
 10453  var mapStringInterfaceTypeImplementors = []string{"MapStringInterfaceType"}
 10454  
 10455  func (ec *executionContext) _MapStringInterfaceType(ctx context.Context, sel ast.SelectionSet, obj map[string]interface{}) graphql.Marshaler {
 10456  	fields := graphql.CollectFields(ec.OperationContext, sel, mapStringInterfaceTypeImplementors)
 10457  
 10458  	out := graphql.NewFieldSet(fields)
 10459  	var invalids uint32
 10460  	for i, field := range fields {
 10461  		switch field.Name {
 10462  		case "__typename":
 10463  			out.Values[i] = graphql.MarshalString("MapStringInterfaceType")
 10464  		case "a":
 10465  			out.Values[i] = ec._MapStringInterfaceType_a(ctx, field, obj)
 10466  		case "b":
 10467  			out.Values[i] = ec._MapStringInterfaceType_b(ctx, field, obj)
 10468  		default:
 10469  			panic("unknown field " + strconv.Quote(field.Name))
 10470  		}
 10471  	}
 10472  	out.Dispatch()
 10473  	if invalids > 0 {
 10474  		return graphql.Null
 10475  	}
 10476  	return out
 10477  }
 10478  
 10479  var modelMethodsImplementors = []string{"ModelMethods"}
 10480  
 10481  func (ec *executionContext) _ModelMethods(ctx context.Context, sel ast.SelectionSet, obj *ModelMethods) graphql.Marshaler {
 10482  	fields := graphql.CollectFields(ec.OperationContext, sel, modelMethodsImplementors)
 10483  
 10484  	out := graphql.NewFieldSet(fields)
 10485  	var invalids uint32
 10486  	for i, field := range fields {
 10487  		switch field.Name {
 10488  		case "__typename":
 10489  			out.Values[i] = graphql.MarshalString("ModelMethods")
 10490  		case "resolverField":
 10491  			field := field
 10492  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10493  				defer func() {
 10494  					if r := recover(); r != nil {
 10495  						ec.Error(ctx, ec.Recover(ctx, r))
 10496  					}
 10497  				}()
 10498  				res = ec._ModelMethods_resolverField(ctx, field, obj)
 10499  				if res == graphql.Null {
 10500  					atomic.AddUint32(&invalids, 1)
 10501  				}
 10502  				return res
 10503  			})
 10504  		case "noContext":
 10505  			out.Values[i] = ec._ModelMethods_noContext(ctx, field, obj)
 10506  			if out.Values[i] == graphql.Null {
 10507  				atomic.AddUint32(&invalids, 1)
 10508  			}
 10509  		case "withContext":
 10510  			field := field
 10511  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10512  				defer func() {
 10513  					if r := recover(); r != nil {
 10514  						ec.Error(ctx, ec.Recover(ctx, r))
 10515  					}
 10516  				}()
 10517  				res = ec._ModelMethods_withContext(ctx, field, obj)
 10518  				if res == graphql.Null {
 10519  					atomic.AddUint32(&invalids, 1)
 10520  				}
 10521  				return res
 10522  			})
 10523  		default:
 10524  			panic("unknown field " + strconv.Quote(field.Name))
 10525  		}
 10526  	}
 10527  	out.Dispatch()
 10528  	if invalids > 0 {
 10529  		return graphql.Null
 10530  	}
 10531  	return out
 10532  }
 10533  
 10534  var objectDirectivesImplementors = []string{"ObjectDirectives"}
 10535  
 10536  func (ec *executionContext) _ObjectDirectives(ctx context.Context, sel ast.SelectionSet, obj *ObjectDirectives) graphql.Marshaler {
 10537  	fields := graphql.CollectFields(ec.OperationContext, sel, objectDirectivesImplementors)
 10538  
 10539  	out := graphql.NewFieldSet(fields)
 10540  	var invalids uint32
 10541  	for i, field := range fields {
 10542  		switch field.Name {
 10543  		case "__typename":
 10544  			out.Values[i] = graphql.MarshalString("ObjectDirectives")
 10545  		case "text":
 10546  			out.Values[i] = ec._ObjectDirectives_text(ctx, field, obj)
 10547  			if out.Values[i] == graphql.Null {
 10548  				invalids++
 10549  			}
 10550  		case "nullableText":
 10551  			out.Values[i] = ec._ObjectDirectives_nullableText(ctx, field, obj)
 10552  		default:
 10553  			panic("unknown field " + strconv.Quote(field.Name))
 10554  		}
 10555  	}
 10556  	out.Dispatch()
 10557  	if invalids > 0 {
 10558  		return graphql.Null
 10559  	}
 10560  	return out
 10561  }
 10562  
 10563  var objectDirectivesWithCustomGoModelImplementors = []string{"ObjectDirectivesWithCustomGoModel"}
 10564  
 10565  func (ec *executionContext) _ObjectDirectivesWithCustomGoModel(ctx context.Context, sel ast.SelectionSet, obj *ObjectDirectivesWithCustomGoModel) graphql.Marshaler {
 10566  	fields := graphql.CollectFields(ec.OperationContext, sel, objectDirectivesWithCustomGoModelImplementors)
 10567  
 10568  	out := graphql.NewFieldSet(fields)
 10569  	var invalids uint32
 10570  	for i, field := range fields {
 10571  		switch field.Name {
 10572  		case "__typename":
 10573  			out.Values[i] = graphql.MarshalString("ObjectDirectivesWithCustomGoModel")
 10574  		case "nullableText":
 10575  			out.Values[i] = ec._ObjectDirectivesWithCustomGoModel_nullableText(ctx, field, obj)
 10576  		default:
 10577  			panic("unknown field " + strconv.Quote(field.Name))
 10578  		}
 10579  	}
 10580  	out.Dispatch()
 10581  	if invalids > 0 {
 10582  		return graphql.Null
 10583  	}
 10584  	return out
 10585  }
 10586  
 10587  var outerObjectImplementors = []string{"OuterObject"}
 10588  
 10589  func (ec *executionContext) _OuterObject(ctx context.Context, sel ast.SelectionSet, obj *OuterObject) graphql.Marshaler {
 10590  	fields := graphql.CollectFields(ec.OperationContext, sel, outerObjectImplementors)
 10591  
 10592  	out := graphql.NewFieldSet(fields)
 10593  	var invalids uint32
 10594  	for i, field := range fields {
 10595  		switch field.Name {
 10596  		case "__typename":
 10597  			out.Values[i] = graphql.MarshalString("OuterObject")
 10598  		case "inner":
 10599  			out.Values[i] = ec._OuterObject_inner(ctx, field, obj)
 10600  			if out.Values[i] == graphql.Null {
 10601  				invalids++
 10602  			}
 10603  		default:
 10604  			panic("unknown field " + strconv.Quote(field.Name))
 10605  		}
 10606  	}
 10607  	out.Dispatch()
 10608  	if invalids > 0 {
 10609  		return graphql.Null
 10610  	}
 10611  	return out
 10612  }
 10613  
 10614  var overlappingFieldsImplementors = []string{"OverlappingFields"}
 10615  
 10616  func (ec *executionContext) _OverlappingFields(ctx context.Context, sel ast.SelectionSet, obj *OverlappingFields) graphql.Marshaler {
 10617  	fields := graphql.CollectFields(ec.OperationContext, sel, overlappingFieldsImplementors)
 10618  
 10619  	out := graphql.NewFieldSet(fields)
 10620  	var invalids uint32
 10621  	for i, field := range fields {
 10622  		switch field.Name {
 10623  		case "__typename":
 10624  			out.Values[i] = graphql.MarshalString("OverlappingFields")
 10625  		case "oneFoo":
 10626  			out.Values[i] = ec._OverlappingFields_oneFoo(ctx, field, obj)
 10627  			if out.Values[i] == graphql.Null {
 10628  				atomic.AddUint32(&invalids, 1)
 10629  			}
 10630  		case "twoFoo":
 10631  			out.Values[i] = ec._OverlappingFields_twoFoo(ctx, field, obj)
 10632  			if out.Values[i] == graphql.Null {
 10633  				atomic.AddUint32(&invalids, 1)
 10634  			}
 10635  		case "oldFoo":
 10636  			field := field
 10637  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10638  				defer func() {
 10639  					if r := recover(); r != nil {
 10640  						ec.Error(ctx, ec.Recover(ctx, r))
 10641  					}
 10642  				}()
 10643  				res = ec._OverlappingFields_oldFoo(ctx, field, obj)
 10644  				if res == graphql.Null {
 10645  					atomic.AddUint32(&invalids, 1)
 10646  				}
 10647  				return res
 10648  			})
 10649  		case "newFoo":
 10650  			out.Values[i] = ec._OverlappingFields_newFoo(ctx, field, obj)
 10651  			if out.Values[i] == graphql.Null {
 10652  				atomic.AddUint32(&invalids, 1)
 10653  			}
 10654  		case "new_foo":
 10655  			out.Values[i] = ec._OverlappingFields_new_foo(ctx, field, obj)
 10656  			if out.Values[i] == graphql.Null {
 10657  				atomic.AddUint32(&invalids, 1)
 10658  			}
 10659  		default:
 10660  			panic("unknown field " + strconv.Quote(field.Name))
 10661  		}
 10662  	}
 10663  	out.Dispatch()
 10664  	if invalids > 0 {
 10665  		return graphql.Null
 10666  	}
 10667  	return out
 10668  }
 10669  
 10670  var panicsImplementors = []string{"Panics"}
 10671  
 10672  func (ec *executionContext) _Panics(ctx context.Context, sel ast.SelectionSet, obj *Panics) graphql.Marshaler {
 10673  	fields := graphql.CollectFields(ec.OperationContext, sel, panicsImplementors)
 10674  
 10675  	out := graphql.NewFieldSet(fields)
 10676  	var invalids uint32
 10677  	for i, field := range fields {
 10678  		switch field.Name {
 10679  		case "__typename":
 10680  			out.Values[i] = graphql.MarshalString("Panics")
 10681  		case "fieldScalarMarshal":
 10682  			field := field
 10683  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10684  				defer func() {
 10685  					if r := recover(); r != nil {
 10686  						ec.Error(ctx, ec.Recover(ctx, r))
 10687  					}
 10688  				}()
 10689  				res = ec._Panics_fieldScalarMarshal(ctx, field, obj)
 10690  				if res == graphql.Null {
 10691  					atomic.AddUint32(&invalids, 1)
 10692  				}
 10693  				return res
 10694  			})
 10695  		case "fieldFuncMarshal":
 10696  			field := field
 10697  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10698  				defer func() {
 10699  					if r := recover(); r != nil {
 10700  						ec.Error(ctx, ec.Recover(ctx, r))
 10701  					}
 10702  				}()
 10703  				res = ec._Panics_fieldFuncMarshal(ctx, field, obj)
 10704  				if res == graphql.Null {
 10705  					atomic.AddUint32(&invalids, 1)
 10706  				}
 10707  				return res
 10708  			})
 10709  		case "argUnmarshal":
 10710  			field := field
 10711  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10712  				defer func() {
 10713  					if r := recover(); r != nil {
 10714  						ec.Error(ctx, ec.Recover(ctx, r))
 10715  					}
 10716  				}()
 10717  				res = ec._Panics_argUnmarshal(ctx, field, obj)
 10718  				if res == graphql.Null {
 10719  					atomic.AddUint32(&invalids, 1)
 10720  				}
 10721  				return res
 10722  			})
 10723  		default:
 10724  			panic("unknown field " + strconv.Quote(field.Name))
 10725  		}
 10726  	}
 10727  	out.Dispatch()
 10728  	if invalids > 0 {
 10729  		return graphql.Null
 10730  	}
 10731  	return out
 10732  }
 10733  
 10734  var primitiveImplementors = []string{"Primitive"}
 10735  
 10736  func (ec *executionContext) _Primitive(ctx context.Context, sel ast.SelectionSet, obj *Primitive) graphql.Marshaler {
 10737  	fields := graphql.CollectFields(ec.OperationContext, sel, primitiveImplementors)
 10738  
 10739  	out := graphql.NewFieldSet(fields)
 10740  	var invalids uint32
 10741  	for i, field := range fields {
 10742  		switch field.Name {
 10743  		case "__typename":
 10744  			out.Values[i] = graphql.MarshalString("Primitive")
 10745  		case "value":
 10746  			field := field
 10747  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10748  				defer func() {
 10749  					if r := recover(); r != nil {
 10750  						ec.Error(ctx, ec.Recover(ctx, r))
 10751  					}
 10752  				}()
 10753  				res = ec._Primitive_value(ctx, field, obj)
 10754  				if res == graphql.Null {
 10755  					atomic.AddUint32(&invalids, 1)
 10756  				}
 10757  				return res
 10758  			})
 10759  		case "squared":
 10760  			out.Values[i] = ec._Primitive_squared(ctx, field, obj)
 10761  			if out.Values[i] == graphql.Null {
 10762  				atomic.AddUint32(&invalids, 1)
 10763  			}
 10764  		default:
 10765  			panic("unknown field " + strconv.Quote(field.Name))
 10766  		}
 10767  	}
 10768  	out.Dispatch()
 10769  	if invalids > 0 {
 10770  		return graphql.Null
 10771  	}
 10772  	return out
 10773  }
 10774  
 10775  var primitiveStringImplementors = []string{"PrimitiveString"}
 10776  
 10777  func (ec *executionContext) _PrimitiveString(ctx context.Context, sel ast.SelectionSet, obj *PrimitiveString) graphql.Marshaler {
 10778  	fields := graphql.CollectFields(ec.OperationContext, sel, primitiveStringImplementors)
 10779  
 10780  	out := graphql.NewFieldSet(fields)
 10781  	var invalids uint32
 10782  	for i, field := range fields {
 10783  		switch field.Name {
 10784  		case "__typename":
 10785  			out.Values[i] = graphql.MarshalString("PrimitiveString")
 10786  		case "value":
 10787  			field := field
 10788  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10789  				defer func() {
 10790  					if r := recover(); r != nil {
 10791  						ec.Error(ctx, ec.Recover(ctx, r))
 10792  					}
 10793  				}()
 10794  				res = ec._PrimitiveString_value(ctx, field, obj)
 10795  				if res == graphql.Null {
 10796  					atomic.AddUint32(&invalids, 1)
 10797  				}
 10798  				return res
 10799  			})
 10800  		case "doubled":
 10801  			out.Values[i] = ec._PrimitiveString_doubled(ctx, field, obj)
 10802  			if out.Values[i] == graphql.Null {
 10803  				atomic.AddUint32(&invalids, 1)
 10804  			}
 10805  		case "len":
 10806  			field := field
 10807  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10808  				defer func() {
 10809  					if r := recover(); r != nil {
 10810  						ec.Error(ctx, ec.Recover(ctx, r))
 10811  					}
 10812  				}()
 10813  				res = ec._PrimitiveString_len(ctx, field, obj)
 10814  				if res == graphql.Null {
 10815  					atomic.AddUint32(&invalids, 1)
 10816  				}
 10817  				return res
 10818  			})
 10819  		default:
 10820  			panic("unknown field " + strconv.Quote(field.Name))
 10821  		}
 10822  	}
 10823  	out.Dispatch()
 10824  	if invalids > 0 {
 10825  		return graphql.Null
 10826  	}
 10827  	return out
 10828  }
 10829  
 10830  var queryImplementors = []string{"Query"}
 10831  
 10832  func (ec *executionContext) _Query(ctx context.Context, sel ast.SelectionSet) graphql.Marshaler {
 10833  	fields := graphql.CollectFields(ec.OperationContext, sel, queryImplementors)
 10834  
 10835  	ctx = graphql.WithFieldContext(ctx, &graphql.FieldContext{
 10836  		Object: "Query",
 10837  	})
 10838  
 10839  	out := graphql.NewFieldSet(fields)
 10840  	var invalids uint32
 10841  	for i, field := range fields {
 10842  		switch field.Name {
 10843  		case "__typename":
 10844  			out.Values[i] = graphql.MarshalString("Query")
 10845  		case "invalidIdentifier":
 10846  			field := field
 10847  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10848  				defer func() {
 10849  					if r := recover(); r != nil {
 10850  						ec.Error(ctx, ec.Recover(ctx, r))
 10851  					}
 10852  				}()
 10853  				res = ec._Query_invalidIdentifier(ctx, field)
 10854  				return res
 10855  			})
 10856  		case "collision":
 10857  			field := field
 10858  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10859  				defer func() {
 10860  					if r := recover(); r != nil {
 10861  						ec.Error(ctx, ec.Recover(ctx, r))
 10862  					}
 10863  				}()
 10864  				res = ec._Query_collision(ctx, field)
 10865  				return res
 10866  			})
 10867  		case "mapInput":
 10868  			field := field
 10869  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10870  				defer func() {
 10871  					if r := recover(); r != nil {
 10872  						ec.Error(ctx, ec.Recover(ctx, r))
 10873  					}
 10874  				}()
 10875  				res = ec._Query_mapInput(ctx, field)
 10876  				return res
 10877  			})
 10878  		case "recursive":
 10879  			field := field
 10880  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10881  				defer func() {
 10882  					if r := recover(); r != nil {
 10883  						ec.Error(ctx, ec.Recover(ctx, r))
 10884  					}
 10885  				}()
 10886  				res = ec._Query_recursive(ctx, field)
 10887  				return res
 10888  			})
 10889  		case "nestedInputs":
 10890  			field := field
 10891  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10892  				defer func() {
 10893  					if r := recover(); r != nil {
 10894  						ec.Error(ctx, ec.Recover(ctx, r))
 10895  					}
 10896  				}()
 10897  				res = ec._Query_nestedInputs(ctx, field)
 10898  				return res
 10899  			})
 10900  		case "nestedOutputs":
 10901  			field := field
 10902  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10903  				defer func() {
 10904  					if r := recover(); r != nil {
 10905  						ec.Error(ctx, ec.Recover(ctx, r))
 10906  					}
 10907  				}()
 10908  				res = ec._Query_nestedOutputs(ctx, field)
 10909  				return res
 10910  			})
 10911  		case "modelMethods":
 10912  			field := field
 10913  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10914  				defer func() {
 10915  					if r := recover(); r != nil {
 10916  						ec.Error(ctx, ec.Recover(ctx, r))
 10917  					}
 10918  				}()
 10919  				res = ec._Query_modelMethods(ctx, field)
 10920  				return res
 10921  			})
 10922  		case "user":
 10923  			field := field
 10924  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10925  				defer func() {
 10926  					if r := recover(); r != nil {
 10927  						ec.Error(ctx, ec.Recover(ctx, r))
 10928  					}
 10929  				}()
 10930  				res = ec._Query_user(ctx, field)
 10931  				if res == graphql.Null {
 10932  					atomic.AddUint32(&invalids, 1)
 10933  				}
 10934  				return res
 10935  			})
 10936  		case "nullableArg":
 10937  			field := field
 10938  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10939  				defer func() {
 10940  					if r := recover(); r != nil {
 10941  						ec.Error(ctx, ec.Recover(ctx, r))
 10942  					}
 10943  				}()
 10944  				res = ec._Query_nullableArg(ctx, field)
 10945  				return res
 10946  			})
 10947  		case "inputSlice":
 10948  			field := field
 10949  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10950  				defer func() {
 10951  					if r := recover(); r != nil {
 10952  						ec.Error(ctx, ec.Recover(ctx, r))
 10953  					}
 10954  				}()
 10955  				res = ec._Query_inputSlice(ctx, field)
 10956  				if res == graphql.Null {
 10957  					atomic.AddUint32(&invalids, 1)
 10958  				}
 10959  				return res
 10960  			})
 10961  		case "shapeUnion":
 10962  			field := field
 10963  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10964  				defer func() {
 10965  					if r := recover(); r != nil {
 10966  						ec.Error(ctx, ec.Recover(ctx, r))
 10967  					}
 10968  				}()
 10969  				res = ec._Query_shapeUnion(ctx, field)
 10970  				if res == graphql.Null {
 10971  					atomic.AddUint32(&invalids, 1)
 10972  				}
 10973  				return res
 10974  			})
 10975  		case "autobind":
 10976  			field := field
 10977  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10978  				defer func() {
 10979  					if r := recover(); r != nil {
 10980  						ec.Error(ctx, ec.Recover(ctx, r))
 10981  					}
 10982  				}()
 10983  				res = ec._Query_autobind(ctx, field)
 10984  				return res
 10985  			})
 10986  		case "deprecatedField":
 10987  			field := field
 10988  			out.Concurrently(i, func() (res graphql.Marshaler) {
 10989  				defer func() {
 10990  					if r := recover(); r != nil {
 10991  						ec.Error(ctx, ec.Recover(ctx, r))
 10992  					}
 10993  				}()
 10994  				res = ec._Query_deprecatedField(ctx, field)
 10995  				if res == graphql.Null {
 10996  					atomic.AddUint32(&invalids, 1)
 10997  				}
 10998  				return res
 10999  			})
 11000  		case "overlapping":
 11001  			field := field
 11002  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11003  				defer func() {
 11004  					if r := recover(); r != nil {
 11005  						ec.Error(ctx, ec.Recover(ctx, r))
 11006  					}
 11007  				}()
 11008  				res = ec._Query_overlapping(ctx, field)
 11009  				return res
 11010  			})
 11011  		case "directiveArg":
 11012  			field := field
 11013  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11014  				defer func() {
 11015  					if r := recover(); r != nil {
 11016  						ec.Error(ctx, ec.Recover(ctx, r))
 11017  					}
 11018  				}()
 11019  				res = ec._Query_directiveArg(ctx, field)
 11020  				return res
 11021  			})
 11022  		case "directiveNullableArg":
 11023  			field := field
 11024  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11025  				defer func() {
 11026  					if r := recover(); r != nil {
 11027  						ec.Error(ctx, ec.Recover(ctx, r))
 11028  					}
 11029  				}()
 11030  				res = ec._Query_directiveNullableArg(ctx, field)
 11031  				return res
 11032  			})
 11033  		case "directiveInputNullable":
 11034  			field := field
 11035  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11036  				defer func() {
 11037  					if r := recover(); r != nil {
 11038  						ec.Error(ctx, ec.Recover(ctx, r))
 11039  					}
 11040  				}()
 11041  				res = ec._Query_directiveInputNullable(ctx, field)
 11042  				return res
 11043  			})
 11044  		case "directiveInput":
 11045  			field := field
 11046  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11047  				defer func() {
 11048  					if r := recover(); r != nil {
 11049  						ec.Error(ctx, ec.Recover(ctx, r))
 11050  					}
 11051  				}()
 11052  				res = ec._Query_directiveInput(ctx, field)
 11053  				return res
 11054  			})
 11055  		case "directiveInputType":
 11056  			field := field
 11057  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11058  				defer func() {
 11059  					if r := recover(); r != nil {
 11060  						ec.Error(ctx, ec.Recover(ctx, r))
 11061  					}
 11062  				}()
 11063  				res = ec._Query_directiveInputType(ctx, field)
 11064  				return res
 11065  			})
 11066  		case "directiveObject":
 11067  			field := field
 11068  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11069  				defer func() {
 11070  					if r := recover(); r != nil {
 11071  						ec.Error(ctx, ec.Recover(ctx, r))
 11072  					}
 11073  				}()
 11074  				res = ec._Query_directiveObject(ctx, field)
 11075  				return res
 11076  			})
 11077  		case "directiveObjectWithCustomGoModel":
 11078  			field := field
 11079  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11080  				defer func() {
 11081  					if r := recover(); r != nil {
 11082  						ec.Error(ctx, ec.Recover(ctx, r))
 11083  					}
 11084  				}()
 11085  				res = ec._Query_directiveObjectWithCustomGoModel(ctx, field)
 11086  				return res
 11087  			})
 11088  		case "directiveFieldDef":
 11089  			field := field
 11090  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11091  				defer func() {
 11092  					if r := recover(); r != nil {
 11093  						ec.Error(ctx, ec.Recover(ctx, r))
 11094  					}
 11095  				}()
 11096  				res = ec._Query_directiveFieldDef(ctx, field)
 11097  				if res == graphql.Null {
 11098  					atomic.AddUint32(&invalids, 1)
 11099  				}
 11100  				return res
 11101  			})
 11102  		case "directiveField":
 11103  			field := field
 11104  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11105  				defer func() {
 11106  					if r := recover(); r != nil {
 11107  						ec.Error(ctx, ec.Recover(ctx, r))
 11108  					}
 11109  				}()
 11110  				res = ec._Query_directiveField(ctx, field)
 11111  				return res
 11112  			})
 11113  		case "directiveDouble":
 11114  			field := field
 11115  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11116  				defer func() {
 11117  					if r := recover(); r != nil {
 11118  						ec.Error(ctx, ec.Recover(ctx, r))
 11119  					}
 11120  				}()
 11121  				res = ec._Query_directiveDouble(ctx, field)
 11122  				return res
 11123  			})
 11124  		case "directiveUnimplemented":
 11125  			field := field
 11126  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11127  				defer func() {
 11128  					if r := recover(); r != nil {
 11129  						ec.Error(ctx, ec.Recover(ctx, r))
 11130  					}
 11131  				}()
 11132  				res = ec._Query_directiveUnimplemented(ctx, field)
 11133  				return res
 11134  			})
 11135  		case "embeddedCase1":
 11136  			field := field
 11137  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11138  				defer func() {
 11139  					if r := recover(); r != nil {
 11140  						ec.Error(ctx, ec.Recover(ctx, r))
 11141  					}
 11142  				}()
 11143  				res = ec._Query_embeddedCase1(ctx, field)
 11144  				return res
 11145  			})
 11146  		case "embeddedCase2":
 11147  			field := field
 11148  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11149  				defer func() {
 11150  					if r := recover(); r != nil {
 11151  						ec.Error(ctx, ec.Recover(ctx, r))
 11152  					}
 11153  				}()
 11154  				res = ec._Query_embeddedCase2(ctx, field)
 11155  				return res
 11156  			})
 11157  		case "embeddedCase3":
 11158  			field := field
 11159  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11160  				defer func() {
 11161  					if r := recover(); r != nil {
 11162  						ec.Error(ctx, ec.Recover(ctx, r))
 11163  					}
 11164  				}()
 11165  				res = ec._Query_embeddedCase3(ctx, field)
 11166  				return res
 11167  			})
 11168  		case "enumInInput":
 11169  			field := field
 11170  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11171  				defer func() {
 11172  					if r := recover(); r != nil {
 11173  						ec.Error(ctx, ec.Recover(ctx, r))
 11174  					}
 11175  				}()
 11176  				res = ec._Query_enumInInput(ctx, field)
 11177  				if res == graphql.Null {
 11178  					atomic.AddUint32(&invalids, 1)
 11179  				}
 11180  				return res
 11181  			})
 11182  		case "shapes":
 11183  			field := field
 11184  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11185  				defer func() {
 11186  					if r := recover(); r != nil {
 11187  						ec.Error(ctx, ec.Recover(ctx, r))
 11188  					}
 11189  				}()
 11190  				res = ec._Query_shapes(ctx, field)
 11191  				return res
 11192  			})
 11193  		case "noShape":
 11194  			field := field
 11195  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11196  				defer func() {
 11197  					if r := recover(); r != nil {
 11198  						ec.Error(ctx, ec.Recover(ctx, r))
 11199  					}
 11200  				}()
 11201  				res = ec._Query_noShape(ctx, field)
 11202  				return res
 11203  			})
 11204  		case "node":
 11205  			field := field
 11206  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11207  				defer func() {
 11208  					if r := recover(); r != nil {
 11209  						ec.Error(ctx, ec.Recover(ctx, r))
 11210  					}
 11211  				}()
 11212  				res = ec._Query_node(ctx, field)
 11213  				if res == graphql.Null {
 11214  					atomic.AddUint32(&invalids, 1)
 11215  				}
 11216  				return res
 11217  			})
 11218  		case "noShapeTypedNil":
 11219  			field := field
 11220  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11221  				defer func() {
 11222  					if r := recover(); r != nil {
 11223  						ec.Error(ctx, ec.Recover(ctx, r))
 11224  					}
 11225  				}()
 11226  				res = ec._Query_noShapeTypedNil(ctx, field)
 11227  				return res
 11228  			})
 11229  		case "animal":
 11230  			field := field
 11231  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11232  				defer func() {
 11233  					if r := recover(); r != nil {
 11234  						ec.Error(ctx, ec.Recover(ctx, r))
 11235  					}
 11236  				}()
 11237  				res = ec._Query_animal(ctx, field)
 11238  				return res
 11239  			})
 11240  		case "notAnInterface":
 11241  			field := field
 11242  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11243  				defer func() {
 11244  					if r := recover(); r != nil {
 11245  						ec.Error(ctx, ec.Recover(ctx, r))
 11246  					}
 11247  				}()
 11248  				res = ec._Query_notAnInterface(ctx, field)
 11249  				return res
 11250  			})
 11251  		case "issue896a":
 11252  			field := field
 11253  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11254  				defer func() {
 11255  					if r := recover(); r != nil {
 11256  						ec.Error(ctx, ec.Recover(ctx, r))
 11257  					}
 11258  				}()
 11259  				res = ec._Query_issue896a(ctx, field)
 11260  				return res
 11261  			})
 11262  		case "mapStringInterface":
 11263  			field := field
 11264  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11265  				defer func() {
 11266  					if r := recover(); r != nil {
 11267  						ec.Error(ctx, ec.Recover(ctx, r))
 11268  					}
 11269  				}()
 11270  				res = ec._Query_mapStringInterface(ctx, field)
 11271  				return res
 11272  			})
 11273  		case "mapNestedStringInterface":
 11274  			field := field
 11275  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11276  				defer func() {
 11277  					if r := recover(); r != nil {
 11278  						ec.Error(ctx, ec.Recover(ctx, r))
 11279  					}
 11280  				}()
 11281  				res = ec._Query_mapNestedStringInterface(ctx, field)
 11282  				return res
 11283  			})
 11284  		case "errorBubble":
 11285  			field := field
 11286  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11287  				defer func() {
 11288  					if r := recover(); r != nil {
 11289  						ec.Error(ctx, ec.Recover(ctx, r))
 11290  					}
 11291  				}()
 11292  				res = ec._Query_errorBubble(ctx, field)
 11293  				return res
 11294  			})
 11295  		case "errors":
 11296  			field := field
 11297  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11298  				defer func() {
 11299  					if r := recover(); r != nil {
 11300  						ec.Error(ctx, ec.Recover(ctx, r))
 11301  					}
 11302  				}()
 11303  				res = ec._Query_errors(ctx, field)
 11304  				return res
 11305  			})
 11306  		case "valid":
 11307  			field := field
 11308  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11309  				defer func() {
 11310  					if r := recover(); r != nil {
 11311  						ec.Error(ctx, ec.Recover(ctx, r))
 11312  					}
 11313  				}()
 11314  				res = ec._Query_valid(ctx, field)
 11315  				if res == graphql.Null {
 11316  					atomic.AddUint32(&invalids, 1)
 11317  				}
 11318  				return res
 11319  			})
 11320  		case "panics":
 11321  			field := field
 11322  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11323  				defer func() {
 11324  					if r := recover(); r != nil {
 11325  						ec.Error(ctx, ec.Recover(ctx, r))
 11326  					}
 11327  				}()
 11328  				res = ec._Query_panics(ctx, field)
 11329  				return res
 11330  			})
 11331  		case "primitiveObject":
 11332  			field := field
 11333  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11334  				defer func() {
 11335  					if r := recover(); r != nil {
 11336  						ec.Error(ctx, ec.Recover(ctx, r))
 11337  					}
 11338  				}()
 11339  				res = ec._Query_primitiveObject(ctx, field)
 11340  				if res == graphql.Null {
 11341  					atomic.AddUint32(&invalids, 1)
 11342  				}
 11343  				return res
 11344  			})
 11345  		case "primitiveStringObject":
 11346  			field := field
 11347  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11348  				defer func() {
 11349  					if r := recover(); r != nil {
 11350  						ec.Error(ctx, ec.Recover(ctx, r))
 11351  					}
 11352  				}()
 11353  				res = ec._Query_primitiveStringObject(ctx, field)
 11354  				if res == graphql.Null {
 11355  					atomic.AddUint32(&invalids, 1)
 11356  				}
 11357  				return res
 11358  			})
 11359  		case "defaultScalar":
 11360  			field := field
 11361  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11362  				defer func() {
 11363  					if r := recover(); r != nil {
 11364  						ec.Error(ctx, ec.Recover(ctx, r))
 11365  					}
 11366  				}()
 11367  				res = ec._Query_defaultScalar(ctx, field)
 11368  				if res == graphql.Null {
 11369  					atomic.AddUint32(&invalids, 1)
 11370  				}
 11371  				return res
 11372  			})
 11373  		case "slices":
 11374  			field := field
 11375  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11376  				defer func() {
 11377  					if r := recover(); r != nil {
 11378  						ec.Error(ctx, ec.Recover(ctx, r))
 11379  					}
 11380  				}()
 11381  				res = ec._Query_slices(ctx, field)
 11382  				return res
 11383  			})
 11384  		case "scalarSlice":
 11385  			field := field
 11386  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11387  				defer func() {
 11388  					if r := recover(); r != nil {
 11389  						ec.Error(ctx, ec.Recover(ctx, r))
 11390  					}
 11391  				}()
 11392  				res = ec._Query_scalarSlice(ctx, field)
 11393  				if res == graphql.Null {
 11394  					atomic.AddUint32(&invalids, 1)
 11395  				}
 11396  				return res
 11397  			})
 11398  		case "fallback":
 11399  			field := field
 11400  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11401  				defer func() {
 11402  					if r := recover(); r != nil {
 11403  						ec.Error(ctx, ec.Recover(ctx, r))
 11404  					}
 11405  				}()
 11406  				res = ec._Query_fallback(ctx, field)
 11407  				if res == graphql.Null {
 11408  					atomic.AddUint32(&invalids, 1)
 11409  				}
 11410  				return res
 11411  			})
 11412  		case "optionalUnion":
 11413  			field := field
 11414  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11415  				defer func() {
 11416  					if r := recover(); r != nil {
 11417  						ec.Error(ctx, ec.Recover(ctx, r))
 11418  					}
 11419  				}()
 11420  				res = ec._Query_optionalUnion(ctx, field)
 11421  				return res
 11422  			})
 11423  		case "validType":
 11424  			field := field
 11425  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11426  				defer func() {
 11427  					if r := recover(); r != nil {
 11428  						ec.Error(ctx, ec.Recover(ctx, r))
 11429  					}
 11430  				}()
 11431  				res = ec._Query_validType(ctx, field)
 11432  				return res
 11433  			})
 11434  		case "wrappedStruct":
 11435  			field := field
 11436  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11437  				defer func() {
 11438  					if r := recover(); r != nil {
 11439  						ec.Error(ctx, ec.Recover(ctx, r))
 11440  					}
 11441  				}()
 11442  				res = ec._Query_wrappedStruct(ctx, field)
 11443  				if res == graphql.Null {
 11444  					atomic.AddUint32(&invalids, 1)
 11445  				}
 11446  				return res
 11447  			})
 11448  		case "wrappedScalar":
 11449  			field := field
 11450  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11451  				defer func() {
 11452  					if r := recover(); r != nil {
 11453  						ec.Error(ctx, ec.Recover(ctx, r))
 11454  					}
 11455  				}()
 11456  				res = ec._Query_wrappedScalar(ctx, field)
 11457  				if res == graphql.Null {
 11458  					atomic.AddUint32(&invalids, 1)
 11459  				}
 11460  				return res
 11461  			})
 11462  		case "__type":
 11463  			out.Values[i] = ec._Query___type(ctx, field)
 11464  		case "__schema":
 11465  			out.Values[i] = ec._Query___schema(ctx, field)
 11466  		default:
 11467  			panic("unknown field " + strconv.Quote(field.Name))
 11468  		}
 11469  	}
 11470  	out.Dispatch()
 11471  	if invalids > 0 {
 11472  		return graphql.Null
 11473  	}
 11474  	return out
 11475  }
 11476  
 11477  var rectangleImplementors = []string{"Rectangle", "Shape", "ShapeUnion"}
 11478  
 11479  func (ec *executionContext) _Rectangle(ctx context.Context, sel ast.SelectionSet, obj *Rectangle) graphql.Marshaler {
 11480  	fields := graphql.CollectFields(ec.OperationContext, sel, rectangleImplementors)
 11481  
 11482  	out := graphql.NewFieldSet(fields)
 11483  	var invalids uint32
 11484  	for i, field := range fields {
 11485  		switch field.Name {
 11486  		case "__typename":
 11487  			out.Values[i] = graphql.MarshalString("Rectangle")
 11488  		case "length":
 11489  			out.Values[i] = ec._Rectangle_length(ctx, field, obj)
 11490  		case "width":
 11491  			out.Values[i] = ec._Rectangle_width(ctx, field, obj)
 11492  		case "area":
 11493  			out.Values[i] = ec._Rectangle_area(ctx, field, obj)
 11494  		default:
 11495  			panic("unknown field " + strconv.Quote(field.Name))
 11496  		}
 11497  	}
 11498  	out.Dispatch()
 11499  	if invalids > 0 {
 11500  		return graphql.Null
 11501  	}
 11502  	return out
 11503  }
 11504  
 11505  var slicesImplementors = []string{"Slices"}
 11506  
 11507  func (ec *executionContext) _Slices(ctx context.Context, sel ast.SelectionSet, obj *Slices) graphql.Marshaler {
 11508  	fields := graphql.CollectFields(ec.OperationContext, sel, slicesImplementors)
 11509  
 11510  	out := graphql.NewFieldSet(fields)
 11511  	var invalids uint32
 11512  	for i, field := range fields {
 11513  		switch field.Name {
 11514  		case "__typename":
 11515  			out.Values[i] = graphql.MarshalString("Slices")
 11516  		case "test1":
 11517  			out.Values[i] = ec._Slices_test1(ctx, field, obj)
 11518  		case "test2":
 11519  			out.Values[i] = ec._Slices_test2(ctx, field, obj)
 11520  		case "test3":
 11521  			out.Values[i] = ec._Slices_test3(ctx, field, obj)
 11522  			if out.Values[i] == graphql.Null {
 11523  				invalids++
 11524  			}
 11525  		case "test4":
 11526  			out.Values[i] = ec._Slices_test4(ctx, field, obj)
 11527  			if out.Values[i] == graphql.Null {
 11528  				invalids++
 11529  			}
 11530  		default:
 11531  			panic("unknown field " + strconv.Quote(field.Name))
 11532  		}
 11533  	}
 11534  	out.Dispatch()
 11535  	if invalids > 0 {
 11536  		return graphql.Null
 11537  	}
 11538  	return out
 11539  }
 11540  
 11541  var subscriptionImplementors = []string{"Subscription"}
 11542  
 11543  func (ec *executionContext) _Subscription(ctx context.Context, sel ast.SelectionSet) func() graphql.Marshaler {
 11544  	fields := graphql.CollectFields(ec.OperationContext, sel, subscriptionImplementors)
 11545  	ctx = graphql.WithFieldContext(ctx, &graphql.FieldContext{
 11546  		Object: "Subscription",
 11547  	})
 11548  	if len(fields) != 1 {
 11549  		ec.Errorf(ctx, "must subscribe to exactly one stream")
 11550  		return nil
 11551  	}
 11552  
 11553  	switch fields[0].Name {
 11554  	case "updated":
 11555  		return ec._Subscription_updated(ctx, fields[0])
 11556  	case "initPayload":
 11557  		return ec._Subscription_initPayload(ctx, fields[0])
 11558  	case "directiveArg":
 11559  		return ec._Subscription_directiveArg(ctx, fields[0])
 11560  	case "directiveNullableArg":
 11561  		return ec._Subscription_directiveNullableArg(ctx, fields[0])
 11562  	case "directiveDouble":
 11563  		return ec._Subscription_directiveDouble(ctx, fields[0])
 11564  	case "directiveUnimplemented":
 11565  		return ec._Subscription_directiveUnimplemented(ctx, fields[0])
 11566  	case "issue896b":
 11567  		return ec._Subscription_issue896b(ctx, fields[0])
 11568  	default:
 11569  		panic("unknown field " + strconv.Quote(fields[0].Name))
 11570  	}
 11571  }
 11572  
 11573  var userImplementors = []string{"User"}
 11574  
 11575  func (ec *executionContext) _User(ctx context.Context, sel ast.SelectionSet, obj *User) graphql.Marshaler {
 11576  	fields := graphql.CollectFields(ec.OperationContext, sel, userImplementors)
 11577  
 11578  	out := graphql.NewFieldSet(fields)
 11579  	var invalids uint32
 11580  	for i, field := range fields {
 11581  		switch field.Name {
 11582  		case "__typename":
 11583  			out.Values[i] = graphql.MarshalString("User")
 11584  		case "id":
 11585  			out.Values[i] = ec._User_id(ctx, field, obj)
 11586  			if out.Values[i] == graphql.Null {
 11587  				atomic.AddUint32(&invalids, 1)
 11588  			}
 11589  		case "friends":
 11590  			field := field
 11591  			out.Concurrently(i, func() (res graphql.Marshaler) {
 11592  				defer func() {
 11593  					if r := recover(); r != nil {
 11594  						ec.Error(ctx, ec.Recover(ctx, r))
 11595  					}
 11596  				}()
 11597  				res = ec._User_friends(ctx, field, obj)
 11598  				if res == graphql.Null {
 11599  					atomic.AddUint32(&invalids, 1)
 11600  				}
 11601  				return res
 11602  			})
 11603  		case "created":
 11604  			out.Values[i] = ec._User_created(ctx, field, obj)
 11605  			if out.Values[i] == graphql.Null {
 11606  				atomic.AddUint32(&invalids, 1)
 11607  			}
 11608  		case "updated":
 11609  			out.Values[i] = ec._User_updated(ctx, field, obj)
 11610  		default:
 11611  			panic("unknown field " + strconv.Quote(field.Name))
 11612  		}
 11613  	}
 11614  	out.Dispatch()
 11615  	if invalids > 0 {
 11616  		return graphql.Null
 11617  	}
 11618  	return out
 11619  }
 11620  
 11621  var validTypeImplementors = []string{"ValidType"}
 11622  
 11623  func (ec *executionContext) _ValidType(ctx context.Context, sel ast.SelectionSet, obj *ValidType) graphql.Marshaler {
 11624  	fields := graphql.CollectFields(ec.OperationContext, sel, validTypeImplementors)
 11625  
 11626  	out := graphql.NewFieldSet(fields)
 11627  	var invalids uint32
 11628  	for i, field := range fields {
 11629  		switch field.Name {
 11630  		case "__typename":
 11631  			out.Values[i] = graphql.MarshalString("ValidType")
 11632  		case "differentCase":
 11633  			out.Values[i] = ec._ValidType_differentCase(ctx, field, obj)
 11634  			if out.Values[i] == graphql.Null {
 11635  				invalids++
 11636  			}
 11637  		case "different_case":
 11638  			out.Values[i] = ec._ValidType_different_case(ctx, field, obj)
 11639  			if out.Values[i] == graphql.Null {
 11640  				invalids++
 11641  			}
 11642  		case "validInputKeywords":
 11643  			out.Values[i] = ec._ValidType_validInputKeywords(ctx, field, obj)
 11644  			if out.Values[i] == graphql.Null {
 11645  				invalids++
 11646  			}
 11647  		case "validArgs":
 11648  			out.Values[i] = ec._ValidType_validArgs(ctx, field, obj)
 11649  			if out.Values[i] == graphql.Null {
 11650  				invalids++
 11651  			}
 11652  		default:
 11653  			panic("unknown field " + strconv.Quote(field.Name))
 11654  		}
 11655  	}
 11656  	out.Dispatch()
 11657  	if invalids > 0 {
 11658  		return graphql.Null
 11659  	}
 11660  	return out
 11661  }
 11662  
 11663  var wrappedStructImplementors = []string{"WrappedStruct"}
 11664  
 11665  func (ec *executionContext) _WrappedStruct(ctx context.Context, sel ast.SelectionSet, obj *WrappedStruct) graphql.Marshaler {
 11666  	fields := graphql.CollectFields(ec.OperationContext, sel, wrappedStructImplementors)
 11667  
 11668  	out := graphql.NewFieldSet(fields)
 11669  	var invalids uint32
 11670  	for i, field := range fields {
 11671  		switch field.Name {
 11672  		case "__typename":
 11673  			out.Values[i] = graphql.MarshalString("WrappedStruct")
 11674  		case "name":
 11675  			out.Values[i] = ec._WrappedStruct_name(ctx, field, obj)
 11676  			if out.Values[i] == graphql.Null {
 11677  				invalids++
 11678  			}
 11679  		default:
 11680  			panic("unknown field " + strconv.Quote(field.Name))
 11681  		}
 11682  	}
 11683  	out.Dispatch()
 11684  	if invalids > 0 {
 11685  		return graphql.Null
 11686  	}
 11687  	return out
 11688  }
 11689  
 11690  var xXItImplementors = []string{"XXIt"}
 11691  
 11692  func (ec *executionContext) _XXIt(ctx context.Context, sel ast.SelectionSet, obj *XXIt) graphql.Marshaler {
 11693  	fields := graphql.CollectFields(ec.OperationContext, sel, xXItImplementors)
 11694  
 11695  	out := graphql.NewFieldSet(fields)
 11696  	var invalids uint32
 11697  	for i, field := range fields {
 11698  		switch field.Name {
 11699  		case "__typename":
 11700  			out.Values[i] = graphql.MarshalString("XXIt")
 11701  		case "id":
 11702  			out.Values[i] = ec._XXIt_id(ctx, field, obj)
 11703  			if out.Values[i] == graphql.Null {
 11704  				invalids++
 11705  			}
 11706  		default:
 11707  			panic("unknown field " + strconv.Quote(field.Name))
 11708  		}
 11709  	}
 11710  	out.Dispatch()
 11711  	if invalids > 0 {
 11712  		return graphql.Null
 11713  	}
 11714  	return out
 11715  }
 11716  
 11717  var xxItImplementors = []string{"XxIt"}
 11718  
 11719  func (ec *executionContext) _XxIt(ctx context.Context, sel ast.SelectionSet, obj *XxIt) graphql.Marshaler {
 11720  	fields := graphql.CollectFields(ec.OperationContext, sel, xxItImplementors)
 11721  
 11722  	out := graphql.NewFieldSet(fields)
 11723  	var invalids uint32
 11724  	for i, field := range fields {
 11725  		switch field.Name {
 11726  		case "__typename":
 11727  			out.Values[i] = graphql.MarshalString("XxIt")
 11728  		case "id":
 11729  			out.Values[i] = ec._XxIt_id(ctx, field, obj)
 11730  			if out.Values[i] == graphql.Null {
 11731  				invalids++
 11732  			}
 11733  		default:
 11734  			panic("unknown field " + strconv.Quote(field.Name))
 11735  		}
 11736  	}
 11737  	out.Dispatch()
 11738  	if invalids > 0 {
 11739  		return graphql.Null
 11740  	}
 11741  	return out
 11742  }
 11743  
 11744  var __DirectiveImplementors = []string{"__Directive"}
 11745  
 11746  func (ec *executionContext) ___Directive(ctx context.Context, sel ast.SelectionSet, obj *introspection.Directive) graphql.Marshaler {
 11747  	fields := graphql.CollectFields(ec.OperationContext, sel, __DirectiveImplementors)
 11748  
 11749  	out := graphql.NewFieldSet(fields)
 11750  	var invalids uint32
 11751  	for i, field := range fields {
 11752  		switch field.Name {
 11753  		case "__typename":
 11754  			out.Values[i] = graphql.MarshalString("__Directive")
 11755  		case "name":
 11756  			out.Values[i] = ec.___Directive_name(ctx, field, obj)
 11757  			if out.Values[i] == graphql.Null {
 11758  				invalids++
 11759  			}
 11760  		case "description":
 11761  			out.Values[i] = ec.___Directive_description(ctx, field, obj)
 11762  		case "locations":
 11763  			out.Values[i] = ec.___Directive_locations(ctx, field, obj)
 11764  			if out.Values[i] == graphql.Null {
 11765  				invalids++
 11766  			}
 11767  		case "args":
 11768  			out.Values[i] = ec.___Directive_args(ctx, field, obj)
 11769  			if out.Values[i] == graphql.Null {
 11770  				invalids++
 11771  			}
 11772  		default:
 11773  			panic("unknown field " + strconv.Quote(field.Name))
 11774  		}
 11775  	}
 11776  	out.Dispatch()
 11777  	if invalids > 0 {
 11778  		return graphql.Null
 11779  	}
 11780  	return out
 11781  }
 11782  
 11783  var __EnumValueImplementors = []string{"__EnumValue"}
 11784  
 11785  func (ec *executionContext) ___EnumValue(ctx context.Context, sel ast.SelectionSet, obj *introspection.EnumValue) graphql.Marshaler {
 11786  	fields := graphql.CollectFields(ec.OperationContext, sel, __EnumValueImplementors)
 11787  
 11788  	out := graphql.NewFieldSet(fields)
 11789  	var invalids uint32
 11790  	for i, field := range fields {
 11791  		switch field.Name {
 11792  		case "__typename":
 11793  			out.Values[i] = graphql.MarshalString("__EnumValue")
 11794  		case "name":
 11795  			out.Values[i] = ec.___EnumValue_name(ctx, field, obj)
 11796  			if out.Values[i] == graphql.Null {
 11797  				invalids++
 11798  			}
 11799  		case "description":
 11800  			out.Values[i] = ec.___EnumValue_description(ctx, field, obj)
 11801  		case "isDeprecated":
 11802  			out.Values[i] = ec.___EnumValue_isDeprecated(ctx, field, obj)
 11803  			if out.Values[i] == graphql.Null {
 11804  				invalids++
 11805  			}
 11806  		case "deprecationReason":
 11807  			out.Values[i] = ec.___EnumValue_deprecationReason(ctx, field, obj)
 11808  		default:
 11809  			panic("unknown field " + strconv.Quote(field.Name))
 11810  		}
 11811  	}
 11812  	out.Dispatch()
 11813  	if invalids > 0 {
 11814  		return graphql.Null
 11815  	}
 11816  	return out
 11817  }
 11818  
 11819  var __FieldImplementors = []string{"__Field"}
 11820  
 11821  func (ec *executionContext) ___Field(ctx context.Context, sel ast.SelectionSet, obj *introspection.Field) graphql.Marshaler {
 11822  	fields := graphql.CollectFields(ec.OperationContext, sel, __FieldImplementors)
 11823  
 11824  	out := graphql.NewFieldSet(fields)
 11825  	var invalids uint32
 11826  	for i, field := range fields {
 11827  		switch field.Name {
 11828  		case "__typename":
 11829  			out.Values[i] = graphql.MarshalString("__Field")
 11830  		case "name":
 11831  			out.Values[i] = ec.___Field_name(ctx, field, obj)
 11832  			if out.Values[i] == graphql.Null {
 11833  				invalids++
 11834  			}
 11835  		case "description":
 11836  			out.Values[i] = ec.___Field_description(ctx, field, obj)
 11837  		case "args":
 11838  			out.Values[i] = ec.___Field_args(ctx, field, obj)
 11839  			if out.Values[i] == graphql.Null {
 11840  				invalids++
 11841  			}
 11842  		case "type":
 11843  			out.Values[i] = ec.___Field_type(ctx, field, obj)
 11844  			if out.Values[i] == graphql.Null {
 11845  				invalids++
 11846  			}
 11847  		case "isDeprecated":
 11848  			out.Values[i] = ec.___Field_isDeprecated(ctx, field, obj)
 11849  			if out.Values[i] == graphql.Null {
 11850  				invalids++
 11851  			}
 11852  		case "deprecationReason":
 11853  			out.Values[i] = ec.___Field_deprecationReason(ctx, field, obj)
 11854  		default:
 11855  			panic("unknown field " + strconv.Quote(field.Name))
 11856  		}
 11857  	}
 11858  	out.Dispatch()
 11859  	if invalids > 0 {
 11860  		return graphql.Null
 11861  	}
 11862  	return out
 11863  }
 11864  
 11865  var __InputValueImplementors = []string{"__InputValue"}
 11866  
 11867  func (ec *executionContext) ___InputValue(ctx context.Context, sel ast.SelectionSet, obj *introspection.InputValue) graphql.Marshaler {
 11868  	fields := graphql.CollectFields(ec.OperationContext, sel, __InputValueImplementors)
 11869  
 11870  	out := graphql.NewFieldSet(fields)
 11871  	var invalids uint32
 11872  	for i, field := range fields {
 11873  		switch field.Name {
 11874  		case "__typename":
 11875  			out.Values[i] = graphql.MarshalString("__InputValue")
 11876  		case "name":
 11877  			out.Values[i] = ec.___InputValue_name(ctx, field, obj)
 11878  			if out.Values[i] == graphql.Null {
 11879  				invalids++
 11880  			}
 11881  		case "description":
 11882  			out.Values[i] = ec.___InputValue_description(ctx, field, obj)
 11883  		case "type":
 11884  			out.Values[i] = ec.___InputValue_type(ctx, field, obj)
 11885  			if out.Values[i] == graphql.Null {
 11886  				invalids++
 11887  			}
 11888  		case "defaultValue":
 11889  			out.Values[i] = ec.___InputValue_defaultValue(ctx, field, obj)
 11890  		default:
 11891  			panic("unknown field " + strconv.Quote(field.Name))
 11892  		}
 11893  	}
 11894  	out.Dispatch()
 11895  	if invalids > 0 {
 11896  		return graphql.Null
 11897  	}
 11898  	return out
 11899  }
 11900  
 11901  var __SchemaImplementors = []string{"__Schema"}
 11902  
 11903  func (ec *executionContext) ___Schema(ctx context.Context, sel ast.SelectionSet, obj *introspection.Schema) graphql.Marshaler {
 11904  	fields := graphql.CollectFields(ec.OperationContext, sel, __SchemaImplementors)
 11905  
 11906  	out := graphql.NewFieldSet(fields)
 11907  	var invalids uint32
 11908  	for i, field := range fields {
 11909  		switch field.Name {
 11910  		case "__typename":
 11911  			out.Values[i] = graphql.MarshalString("__Schema")
 11912  		case "types":
 11913  			out.Values[i] = ec.___Schema_types(ctx, field, obj)
 11914  			if out.Values[i] == graphql.Null {
 11915  				invalids++
 11916  			}
 11917  		case "queryType":
 11918  			out.Values[i] = ec.___Schema_queryType(ctx, field, obj)
 11919  			if out.Values[i] == graphql.Null {
 11920  				invalids++
 11921  			}
 11922  		case "mutationType":
 11923  			out.Values[i] = ec.___Schema_mutationType(ctx, field, obj)
 11924  		case "subscriptionType":
 11925  			out.Values[i] = ec.___Schema_subscriptionType(ctx, field, obj)
 11926  		case "directives":
 11927  			out.Values[i] = ec.___Schema_directives(ctx, field, obj)
 11928  			if out.Values[i] == graphql.Null {
 11929  				invalids++
 11930  			}
 11931  		default:
 11932  			panic("unknown field " + strconv.Quote(field.Name))
 11933  		}
 11934  	}
 11935  	out.Dispatch()
 11936  	if invalids > 0 {
 11937  		return graphql.Null
 11938  	}
 11939  	return out
 11940  }
 11941  
 11942  var __TypeImplementors = []string{"__Type"}
 11943  
 11944  func (ec *executionContext) ___Type(ctx context.Context, sel ast.SelectionSet, obj *introspection.Type) graphql.Marshaler {
 11945  	fields := graphql.CollectFields(ec.OperationContext, sel, __TypeImplementors)
 11946  
 11947  	out := graphql.NewFieldSet(fields)
 11948  	var invalids uint32
 11949  	for i, field := range fields {
 11950  		switch field.Name {
 11951  		case "__typename":
 11952  			out.Values[i] = graphql.MarshalString("__Type")
 11953  		case "kind":
 11954  			out.Values[i] = ec.___Type_kind(ctx, field, obj)
 11955  			if out.Values[i] == graphql.Null {
 11956  				invalids++
 11957  			}
 11958  		case "name":
 11959  			out.Values[i] = ec.___Type_name(ctx, field, obj)
 11960  		case "description":
 11961  			out.Values[i] = ec.___Type_description(ctx, field, obj)
 11962  		case "fields":
 11963  			out.Values[i] = ec.___Type_fields(ctx, field, obj)
 11964  		case "interfaces":
 11965  			out.Values[i] = ec.___Type_interfaces(ctx, field, obj)
 11966  		case "possibleTypes":
 11967  			out.Values[i] = ec.___Type_possibleTypes(ctx, field, obj)
 11968  		case "enumValues":
 11969  			out.Values[i] = ec.___Type_enumValues(ctx, field, obj)
 11970  		case "inputFields":
 11971  			out.Values[i] = ec.___Type_inputFields(ctx, field, obj)
 11972  		case "ofType":
 11973  			out.Values[i] = ec.___Type_ofType(ctx, field, obj)
 11974  		default:
 11975  			panic("unknown field " + strconv.Quote(field.Name))
 11976  		}
 11977  	}
 11978  	out.Dispatch()
 11979  	if invalids > 0 {
 11980  		return graphql.Null
 11981  	}
 11982  	return out
 11983  }
 11984  
 11985  var asdfItImplementors = []string{"asdfIt"}
 11986  
 11987  func (ec *executionContext) _asdfIt(ctx context.Context, sel ast.SelectionSet, obj *AsdfIt) graphql.Marshaler {
 11988  	fields := graphql.CollectFields(ec.OperationContext, sel, asdfItImplementors)
 11989  
 11990  	out := graphql.NewFieldSet(fields)
 11991  	var invalids uint32
 11992  	for i, field := range fields {
 11993  		switch field.Name {
 11994  		case "__typename":
 11995  			out.Values[i] = graphql.MarshalString("asdfIt")
 11996  		case "id":
 11997  			out.Values[i] = ec._asdfIt_id(ctx, field, obj)
 11998  			if out.Values[i] == graphql.Null {
 11999  				invalids++
 12000  			}
 12001  		default:
 12002  			panic("unknown field " + strconv.Quote(field.Name))
 12003  		}
 12004  	}
 12005  	out.Dispatch()
 12006  	if invalids > 0 {
 12007  		return graphql.Null
 12008  	}
 12009  	return out
 12010  }
 12011  
 12012  var iItImplementors = []string{"iIt"}
 12013  
 12014  func (ec *executionContext) _iIt(ctx context.Context, sel ast.SelectionSet, obj *IIt) graphql.Marshaler {
 12015  	fields := graphql.CollectFields(ec.OperationContext, sel, iItImplementors)
 12016  
 12017  	out := graphql.NewFieldSet(fields)
 12018  	var invalids uint32
 12019  	for i, field := range fields {
 12020  		switch field.Name {
 12021  		case "__typename":
 12022  			out.Values[i] = graphql.MarshalString("iIt")
 12023  		case "id":
 12024  			out.Values[i] = ec._iIt_id(ctx, field, obj)
 12025  			if out.Values[i] == graphql.Null {
 12026  				invalids++
 12027  			}
 12028  		default:
 12029  			panic("unknown field " + strconv.Quote(field.Name))
 12030  		}
 12031  	}
 12032  	out.Dispatch()
 12033  	if invalids > 0 {
 12034  		return graphql.Null
 12035  	}
 12036  	return out
 12037  }
 12038  
 12039  // endregion **************************** object.gotpl ****************************
 12040  
 12041  // region    ***************************** type.gotpl *****************************
 12042  
 12043  func (ec *executionContext) unmarshalNBoolean2bool(ctx context.Context, v interface{}) (bool, error) {
 12044  	return graphql.UnmarshalBoolean(v)
 12045  }
 12046  
 12047  func (ec *executionContext) marshalNBoolean2bool(ctx context.Context, sel ast.SelectionSet, v bool) graphql.Marshaler {
 12048  	res := graphql.MarshalBoolean(v)
 12049  	if res == graphql.Null {
 12050  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12051  			ec.Errorf(ctx, "must not be null")
 12052  		}
 12053  	}
 12054  	return res
 12055  }
 12056  
 12057  func (ec *executionContext) unmarshalNBytes2ᚕbyte(ctx context.Context, v interface{}) ([]byte, error) {
 12058  	return UnmarshalBytes(v)
 12059  }
 12060  
 12061  func (ec *executionContext) marshalNBytes2ᚕbyte(ctx context.Context, sel ast.SelectionSet, v []byte) graphql.Marshaler {
 12062  	res := MarshalBytes(v)
 12063  	if res == graphql.Null {
 12064  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12065  			ec.Errorf(ctx, "must not be null")
 12066  		}
 12067  	}
 12068  	return res
 12069  }
 12070  
 12071  func (ec *executionContext) marshalNCheckIssue8962githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx context.Context, sel ast.SelectionSet, v CheckIssue896) graphql.Marshaler {
 12072  	return ec._CheckIssue896(ctx, sel, &v)
 12073  }
 12074  
 12075  func (ec *executionContext) marshalNCheckIssue8962ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx context.Context, sel ast.SelectionSet, v *CheckIssue896) graphql.Marshaler {
 12076  	if v == nil {
 12077  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12078  			ec.Errorf(ctx, "must not be null")
 12079  		}
 12080  		return graphql.Null
 12081  	}
 12082  	return ec._CheckIssue896(ctx, sel, v)
 12083  }
 12084  
 12085  func (ec *executionContext) unmarshalNDefaultScalarImplementation2string(ctx context.Context, v interface{}) (string, error) {
 12086  	return graphql.UnmarshalString(v)
 12087  }
 12088  
 12089  func (ec *executionContext) marshalNDefaultScalarImplementation2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 12090  	res := graphql.MarshalString(v)
 12091  	if res == graphql.Null {
 12092  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12093  			ec.Errorf(ctx, "must not be null")
 12094  		}
 12095  	}
 12096  	return res
 12097  }
 12098  
 12099  func (ec *executionContext) unmarshalNEnumTest2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEnumTest(ctx context.Context, v interface{}) (EnumTest, error) {
 12100  	var res EnumTest
 12101  	return res, res.UnmarshalGQL(v)
 12102  }
 12103  
 12104  func (ec *executionContext) marshalNEnumTest2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEnumTest(ctx context.Context, sel ast.SelectionSet, v EnumTest) graphql.Marshaler {
 12105  	return v
 12106  }
 12107  
 12108  func (ec *executionContext) marshalNError2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx context.Context, sel ast.SelectionSet, v Error) graphql.Marshaler {
 12109  	return ec._Error(ctx, sel, &v)
 12110  }
 12111  
 12112  func (ec *executionContext) marshalNError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx context.Context, sel ast.SelectionSet, v *Error) graphql.Marshaler {
 12113  	if v == nil {
 12114  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12115  			ec.Errorf(ctx, "must not be null")
 12116  		}
 12117  		return graphql.Null
 12118  	}
 12119  	return ec._Error(ctx, sel, v)
 12120  }
 12121  
 12122  func (ec *executionContext) unmarshalNFallbackToStringEncoding2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐFallbackToStringEncoding(ctx context.Context, v interface{}) (FallbackToStringEncoding, error) {
 12123  	tmp, err := graphql.UnmarshalString(v)
 12124  	return FallbackToStringEncoding(tmp), err
 12125  }
 12126  
 12127  func (ec *executionContext) marshalNFallbackToStringEncoding2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐFallbackToStringEncoding(ctx context.Context, sel ast.SelectionSet, v FallbackToStringEncoding) graphql.Marshaler {
 12128  	res := graphql.MarshalString(string(v))
 12129  	if res == graphql.Null {
 12130  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12131  			ec.Errorf(ctx, "must not be null")
 12132  		}
 12133  	}
 12134  	return res
 12135  }
 12136  
 12137  func (ec *executionContext) unmarshalNID2int(ctx context.Context, v interface{}) (int, error) {
 12138  	return graphql.UnmarshalIntID(v)
 12139  }
 12140  
 12141  func (ec *executionContext) marshalNID2int(ctx context.Context, sel ast.SelectionSet, v int) graphql.Marshaler {
 12142  	res := graphql.MarshalIntID(v)
 12143  	if res == graphql.Null {
 12144  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12145  			ec.Errorf(ctx, "must not be null")
 12146  		}
 12147  	}
 12148  	return res
 12149  }
 12150  
 12151  func (ec *executionContext) unmarshalNID2string(ctx context.Context, v interface{}) (string, error) {
 12152  	return graphql.UnmarshalID(v)
 12153  }
 12154  
 12155  func (ec *executionContext) marshalNID2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 12156  	res := graphql.MarshalID(v)
 12157  	if res == graphql.Null {
 12158  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12159  			ec.Errorf(ctx, "must not be null")
 12160  		}
 12161  	}
 12162  	return res
 12163  }
 12164  
 12165  func (ec *executionContext) unmarshalNInnerDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx context.Context, v interface{}) (InnerDirectives, error) {
 12166  	return ec.unmarshalInputInnerDirectives(ctx, v)
 12167  }
 12168  
 12169  func (ec *executionContext) unmarshalNInnerDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx context.Context, v interface{}) (*InnerDirectives, error) {
 12170  	if v == nil {
 12171  		return nil, nil
 12172  	}
 12173  	res, err := ec.unmarshalNInnerDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx, v)
 12174  	return &res, err
 12175  }
 12176  
 12177  func (ec *executionContext) unmarshalNInnerInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerInput(ctx context.Context, v interface{}) (InnerInput, error) {
 12178  	return ec.unmarshalInputInnerInput(ctx, v)
 12179  }
 12180  
 12181  func (ec *executionContext) unmarshalNInnerInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerInput(ctx context.Context, v interface{}) (*InnerInput, error) {
 12182  	if v == nil {
 12183  		return nil, nil
 12184  	}
 12185  	res, err := ec.unmarshalNInnerInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerInput(ctx, v)
 12186  	return &res, err
 12187  }
 12188  
 12189  func (ec *executionContext) marshalNInnerObject2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerObject(ctx context.Context, sel ast.SelectionSet, v InnerObject) graphql.Marshaler {
 12190  	return ec._InnerObject(ctx, sel, &v)
 12191  }
 12192  
 12193  func (ec *executionContext) marshalNInnerObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerObject(ctx context.Context, sel ast.SelectionSet, v *InnerObject) graphql.Marshaler {
 12194  	if v == nil {
 12195  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12196  			ec.Errorf(ctx, "must not be null")
 12197  		}
 12198  		return graphql.Null
 12199  	}
 12200  	return ec._InnerObject(ctx, sel, v)
 12201  }
 12202  
 12203  func (ec *executionContext) unmarshalNInputDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputDirectives(ctx context.Context, v interface{}) (InputDirectives, error) {
 12204  	return ec.unmarshalInputInputDirectives(ctx, v)
 12205  }
 12206  
 12207  func (ec *executionContext) unmarshalNInt2int(ctx context.Context, v interface{}) (int, error) {
 12208  	return graphql.UnmarshalInt(v)
 12209  }
 12210  
 12211  func (ec *executionContext) marshalNInt2int(ctx context.Context, sel ast.SelectionSet, v int) graphql.Marshaler {
 12212  	res := graphql.MarshalInt(v)
 12213  	if res == graphql.Null {
 12214  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12215  			ec.Errorf(ctx, "must not be null")
 12216  		}
 12217  	}
 12218  	return res
 12219  }
 12220  
 12221  func (ec *executionContext) unmarshalNInt2int32(ctx context.Context, v interface{}) (int32, error) {
 12222  	return graphql.UnmarshalInt32(v)
 12223  }
 12224  
 12225  func (ec *executionContext) marshalNInt2int32(ctx context.Context, sel ast.SelectionSet, v int32) graphql.Marshaler {
 12226  	res := graphql.MarshalInt32(v)
 12227  	if res == graphql.Null {
 12228  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12229  			ec.Errorf(ctx, "must not be null")
 12230  		}
 12231  	}
 12232  	return res
 12233  }
 12234  
 12235  func (ec *executionContext) unmarshalNInt2int64(ctx context.Context, v interface{}) (int64, error) {
 12236  	return graphql.UnmarshalInt64(v)
 12237  }
 12238  
 12239  func (ec *executionContext) marshalNInt2int64(ctx context.Context, sel ast.SelectionSet, v int64) graphql.Marshaler {
 12240  	res := graphql.MarshalInt64(v)
 12241  	if res == graphql.Null {
 12242  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12243  			ec.Errorf(ctx, "must not be null")
 12244  		}
 12245  	}
 12246  	return res
 12247  }
 12248  
 12249  func (ec *executionContext) marshalNLoopA2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐLoopA(ctx context.Context, sel ast.SelectionSet, v LoopA) graphql.Marshaler {
 12250  	return ec._LoopA(ctx, sel, &v)
 12251  }
 12252  
 12253  func (ec *executionContext) marshalNLoopA2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐLoopA(ctx context.Context, sel ast.SelectionSet, v *LoopA) graphql.Marshaler {
 12254  	if v == nil {
 12255  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12256  			ec.Errorf(ctx, "must not be null")
 12257  		}
 12258  		return graphql.Null
 12259  	}
 12260  	return ec._LoopA(ctx, sel, v)
 12261  }
 12262  
 12263  func (ec *executionContext) marshalNLoopB2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐLoopB(ctx context.Context, sel ast.SelectionSet, v LoopB) graphql.Marshaler {
 12264  	return ec._LoopB(ctx, sel, &v)
 12265  }
 12266  
 12267  func (ec *executionContext) marshalNLoopB2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐLoopB(ctx context.Context, sel ast.SelectionSet, v *LoopB) graphql.Marshaler {
 12268  	if v == nil {
 12269  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12270  			ec.Errorf(ctx, "must not be null")
 12271  		}
 12272  		return graphql.Null
 12273  	}
 12274  	return ec._LoopB(ctx, sel, v)
 12275  }
 12276  
 12277  func (ec *executionContext) unmarshalNMarshalPanic2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanic(ctx context.Context, v interface{}) (MarshalPanic, error) {
 12278  	var res MarshalPanic
 12279  	return res, res.UnmarshalGQL(v)
 12280  }
 12281  
 12282  func (ec *executionContext) marshalNMarshalPanic2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanic(ctx context.Context, sel ast.SelectionSet, v MarshalPanic) graphql.Marshaler {
 12283  	return v
 12284  }
 12285  
 12286  func (ec *executionContext) unmarshalNMarshalPanic2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanicᚄ(ctx context.Context, v interface{}) ([]MarshalPanic, error) {
 12287  	var vSlice []interface{}
 12288  	if v != nil {
 12289  		if tmp1, ok := v.([]interface{}); ok {
 12290  			vSlice = tmp1
 12291  		} else {
 12292  			vSlice = []interface{}{v}
 12293  		}
 12294  	}
 12295  	var err error
 12296  	res := make([]MarshalPanic, len(vSlice))
 12297  	for i := range vSlice {
 12298  		res[i], err = ec.unmarshalNMarshalPanic2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanic(ctx, vSlice[i])
 12299  		if err != nil {
 12300  			return nil, err
 12301  		}
 12302  	}
 12303  	return res, nil
 12304  }
 12305  
 12306  func (ec *executionContext) marshalNMarshalPanic2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanicᚄ(ctx context.Context, sel ast.SelectionSet, v []MarshalPanic) graphql.Marshaler {
 12307  	ret := make(graphql.Array, len(v))
 12308  	for i := range v {
 12309  		ret[i] = ec.marshalNMarshalPanic2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐMarshalPanic(ctx, sel, v[i])
 12310  	}
 12311  
 12312  	return ret
 12313  }
 12314  
 12315  func (ec *executionContext) marshalNNode2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNode(ctx context.Context, sel ast.SelectionSet, v Node) graphql.Marshaler {
 12316  	if v == nil {
 12317  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12318  			ec.Errorf(ctx, "must not be null")
 12319  		}
 12320  		return graphql.Null
 12321  	}
 12322  	return ec._Node(ctx, sel, v)
 12323  }
 12324  
 12325  func (ec *executionContext) marshalNPrimitive2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitive(ctx context.Context, sel ast.SelectionSet, v Primitive) graphql.Marshaler {
 12326  	return ec._Primitive(ctx, sel, &v)
 12327  }
 12328  
 12329  func (ec *executionContext) marshalNPrimitive2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitiveᚄ(ctx context.Context, sel ast.SelectionSet, v []Primitive) graphql.Marshaler {
 12330  	ret := make(graphql.Array, len(v))
 12331  	var wg sync.WaitGroup
 12332  	isLen1 := len(v) == 1
 12333  	if !isLen1 {
 12334  		wg.Add(len(v))
 12335  	}
 12336  	for i := range v {
 12337  		i := i
 12338  		fc := &graphql.FieldContext{
 12339  			Index:  &i,
 12340  			Result: &v[i],
 12341  		}
 12342  		ctx := graphql.WithFieldContext(ctx, fc)
 12343  		f := func(i int) {
 12344  			defer func() {
 12345  				if r := recover(); r != nil {
 12346  					ec.Error(ctx, ec.Recover(ctx, r))
 12347  					ret = nil
 12348  				}
 12349  			}()
 12350  			if !isLen1 {
 12351  				defer wg.Done()
 12352  			}
 12353  			ret[i] = ec.marshalNPrimitive2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitive(ctx, sel, v[i])
 12354  		}
 12355  		if isLen1 {
 12356  			f(i)
 12357  		} else {
 12358  			go f(i)
 12359  		}
 12360  
 12361  	}
 12362  	wg.Wait()
 12363  	return ret
 12364  }
 12365  
 12366  func (ec *executionContext) marshalNPrimitiveString2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitiveString(ctx context.Context, sel ast.SelectionSet, v PrimitiveString) graphql.Marshaler {
 12367  	return ec._PrimitiveString(ctx, sel, &v)
 12368  }
 12369  
 12370  func (ec *executionContext) marshalNPrimitiveString2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitiveStringᚄ(ctx context.Context, sel ast.SelectionSet, v []PrimitiveString) graphql.Marshaler {
 12371  	ret := make(graphql.Array, len(v))
 12372  	var wg sync.WaitGroup
 12373  	isLen1 := len(v) == 1
 12374  	if !isLen1 {
 12375  		wg.Add(len(v))
 12376  	}
 12377  	for i := range v {
 12378  		i := i
 12379  		fc := &graphql.FieldContext{
 12380  			Index:  &i,
 12381  			Result: &v[i],
 12382  		}
 12383  		ctx := graphql.WithFieldContext(ctx, fc)
 12384  		f := func(i int) {
 12385  			defer func() {
 12386  				if r := recover(); r != nil {
 12387  					ec.Error(ctx, ec.Recover(ctx, r))
 12388  					ret = nil
 12389  				}
 12390  			}()
 12391  			if !isLen1 {
 12392  				defer wg.Done()
 12393  			}
 12394  			ret[i] = ec.marshalNPrimitiveString2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPrimitiveString(ctx, sel, v[i])
 12395  		}
 12396  		if isLen1 {
 12397  			f(i)
 12398  		} else {
 12399  			go f(i)
 12400  		}
 12401  
 12402  	}
 12403  	wg.Wait()
 12404  	return ret
 12405  }
 12406  
 12407  func (ec *executionContext) unmarshalNRecursiveInputSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSlice(ctx context.Context, v interface{}) (RecursiveInputSlice, error) {
 12408  	return ec.unmarshalInputRecursiveInputSlice(ctx, v)
 12409  }
 12410  
 12411  func (ec *executionContext) marshalNShapeUnion2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShapeUnion(ctx context.Context, sel ast.SelectionSet, v ShapeUnion) graphql.Marshaler {
 12412  	if v == nil {
 12413  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12414  			ec.Errorf(ctx, "must not be null")
 12415  		}
 12416  		return graphql.Null
 12417  	}
 12418  	return ec._ShapeUnion(ctx, sel, v)
 12419  }
 12420  
 12421  func (ec *executionContext) unmarshalNString2string(ctx context.Context, v interface{}) (string, error) {
 12422  	return graphql.UnmarshalString(v)
 12423  }
 12424  
 12425  func (ec *executionContext) marshalNString2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 12426  	res := graphql.MarshalString(v)
 12427  	if res == graphql.Null {
 12428  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12429  			ec.Errorf(ctx, "must not be null")
 12430  		}
 12431  	}
 12432  	return res
 12433  }
 12434  
 12435  func (ec *executionContext) unmarshalNString2ᚕstringᚄ(ctx context.Context, v interface{}) ([]string, error) {
 12436  	var vSlice []interface{}
 12437  	if v != nil {
 12438  		if tmp1, ok := v.([]interface{}); ok {
 12439  			vSlice = tmp1
 12440  		} else {
 12441  			vSlice = []interface{}{v}
 12442  		}
 12443  	}
 12444  	var err error
 12445  	res := make([]string, len(vSlice))
 12446  	for i := range vSlice {
 12447  		res[i], err = ec.unmarshalNString2string(ctx, vSlice[i])
 12448  		if err != nil {
 12449  			return nil, err
 12450  		}
 12451  	}
 12452  	return res, nil
 12453  }
 12454  
 12455  func (ec *executionContext) marshalNString2ᚕstringᚄ(ctx context.Context, sel ast.SelectionSet, v []string) graphql.Marshaler {
 12456  	ret := make(graphql.Array, len(v))
 12457  	for i := range v {
 12458  		ret[i] = ec.marshalNString2string(ctx, sel, v[i])
 12459  	}
 12460  
 12461  	return ret
 12462  }
 12463  
 12464  func (ec *executionContext) unmarshalNString2ᚕᚖstring(ctx context.Context, v interface{}) ([]*string, error) {
 12465  	var vSlice []interface{}
 12466  	if v != nil {
 12467  		if tmp1, ok := v.([]interface{}); ok {
 12468  			vSlice = tmp1
 12469  		} else {
 12470  			vSlice = []interface{}{v}
 12471  		}
 12472  	}
 12473  	var err error
 12474  	res := make([]*string, len(vSlice))
 12475  	for i := range vSlice {
 12476  		res[i], err = ec.unmarshalOString2ᚖstring(ctx, vSlice[i])
 12477  		if err != nil {
 12478  			return nil, err
 12479  		}
 12480  	}
 12481  	return res, nil
 12482  }
 12483  
 12484  func (ec *executionContext) marshalNString2ᚕᚖstring(ctx context.Context, sel ast.SelectionSet, v []*string) graphql.Marshaler {
 12485  	ret := make(graphql.Array, len(v))
 12486  	for i := range v {
 12487  		ret[i] = ec.marshalOString2ᚖstring(ctx, sel, v[i])
 12488  	}
 12489  
 12490  	return ret
 12491  }
 12492  
 12493  func (ec *executionContext) unmarshalNString2ᚖstring(ctx context.Context, v interface{}) (*string, error) {
 12494  	if v == nil {
 12495  		return nil, nil
 12496  	}
 12497  	res, err := ec.unmarshalNString2string(ctx, v)
 12498  	return &res, err
 12499  }
 12500  
 12501  func (ec *executionContext) marshalNString2ᚖstring(ctx context.Context, sel ast.SelectionSet, v *string) graphql.Marshaler {
 12502  	if v == nil {
 12503  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12504  			ec.Errorf(ctx, "must not be null")
 12505  		}
 12506  		return graphql.Null
 12507  	}
 12508  	return ec.marshalNString2string(ctx, sel, *v)
 12509  }
 12510  
 12511  func (ec *executionContext) unmarshalNTime2timeᚐTime(ctx context.Context, v interface{}) (time.Time, error) {
 12512  	return graphql.UnmarshalTime(v)
 12513  }
 12514  
 12515  func (ec *executionContext) marshalNTime2timeᚐTime(ctx context.Context, sel ast.SelectionSet, v time.Time) graphql.Marshaler {
 12516  	res := graphql.MarshalTime(v)
 12517  	if res == graphql.Null {
 12518  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12519  			ec.Errorf(ctx, "must not be null")
 12520  		}
 12521  	}
 12522  	return res
 12523  }
 12524  
 12525  func (ec *executionContext) unmarshalNUUID2string(ctx context.Context, v interface{}) (string, error) {
 12526  	return graphql.UnmarshalString(v)
 12527  }
 12528  
 12529  func (ec *executionContext) marshalNUUID2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 12530  	res := graphql.MarshalString(v)
 12531  	if res == graphql.Null {
 12532  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12533  			ec.Errorf(ctx, "must not be null")
 12534  		}
 12535  	}
 12536  	return res
 12537  }
 12538  
 12539  func (ec *executionContext) marshalNUser2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐUser(ctx context.Context, sel ast.SelectionSet, v User) graphql.Marshaler {
 12540  	return ec._User(ctx, sel, &v)
 12541  }
 12542  
 12543  func (ec *executionContext) marshalNUser2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐUserᚄ(ctx context.Context, sel ast.SelectionSet, v []*User) graphql.Marshaler {
 12544  	ret := make(graphql.Array, len(v))
 12545  	var wg sync.WaitGroup
 12546  	isLen1 := len(v) == 1
 12547  	if !isLen1 {
 12548  		wg.Add(len(v))
 12549  	}
 12550  	for i := range v {
 12551  		i := i
 12552  		fc := &graphql.FieldContext{
 12553  			Index:  &i,
 12554  			Result: &v[i],
 12555  		}
 12556  		ctx := graphql.WithFieldContext(ctx, fc)
 12557  		f := func(i int) {
 12558  			defer func() {
 12559  				if r := recover(); r != nil {
 12560  					ec.Error(ctx, ec.Recover(ctx, r))
 12561  					ret = nil
 12562  				}
 12563  			}()
 12564  			if !isLen1 {
 12565  				defer wg.Done()
 12566  			}
 12567  			ret[i] = ec.marshalNUser2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐUser(ctx, sel, v[i])
 12568  		}
 12569  		if isLen1 {
 12570  			f(i)
 12571  		} else {
 12572  			go f(i)
 12573  		}
 12574  
 12575  	}
 12576  	wg.Wait()
 12577  	return ret
 12578  }
 12579  
 12580  func (ec *executionContext) marshalNUser2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐUser(ctx context.Context, sel ast.SelectionSet, v *User) graphql.Marshaler {
 12581  	if v == nil {
 12582  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12583  			ec.Errorf(ctx, "must not be null")
 12584  		}
 12585  		return graphql.Null
 12586  	}
 12587  	return ec._User(ctx, sel, v)
 12588  }
 12589  
 12590  func (ec *executionContext) unmarshalNWrappedScalar2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐWrappedScalar(ctx context.Context, v interface{}) (WrappedScalar, error) {
 12591  	tmp, err := graphql.UnmarshalString(v)
 12592  	return WrappedScalar(tmp), err
 12593  }
 12594  
 12595  func (ec *executionContext) marshalNWrappedScalar2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐWrappedScalar(ctx context.Context, sel ast.SelectionSet, v WrappedScalar) graphql.Marshaler {
 12596  	res := graphql.MarshalString(string(v))
 12597  	if res == graphql.Null {
 12598  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12599  			ec.Errorf(ctx, "must not be null")
 12600  		}
 12601  	}
 12602  	return res
 12603  }
 12604  
 12605  func (ec *executionContext) marshalNWrappedStruct2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐWrappedStruct(ctx context.Context, sel ast.SelectionSet, v WrappedStruct) graphql.Marshaler {
 12606  	return ec._WrappedStruct(ctx, sel, &v)
 12607  }
 12608  
 12609  func (ec *executionContext) marshalNWrappedStruct2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐWrappedStruct(ctx context.Context, sel ast.SelectionSet, v *WrappedStruct) graphql.Marshaler {
 12610  	if v == nil {
 12611  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12612  			ec.Errorf(ctx, "must not be null")
 12613  		}
 12614  		return graphql.Null
 12615  	}
 12616  	return ec._WrappedStruct(ctx, sel, v)
 12617  }
 12618  
 12619  func (ec *executionContext) marshalN__Directive2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐDirective(ctx context.Context, sel ast.SelectionSet, v introspection.Directive) graphql.Marshaler {
 12620  	return ec.___Directive(ctx, sel, &v)
 12621  }
 12622  
 12623  func (ec *executionContext) marshalN__Directive2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐDirectiveᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.Directive) graphql.Marshaler {
 12624  	ret := make(graphql.Array, len(v))
 12625  	var wg sync.WaitGroup
 12626  	isLen1 := len(v) == 1
 12627  	if !isLen1 {
 12628  		wg.Add(len(v))
 12629  	}
 12630  	for i := range v {
 12631  		i := i
 12632  		fc := &graphql.FieldContext{
 12633  			Index:  &i,
 12634  			Result: &v[i],
 12635  		}
 12636  		ctx := graphql.WithFieldContext(ctx, fc)
 12637  		f := func(i int) {
 12638  			defer func() {
 12639  				if r := recover(); r != nil {
 12640  					ec.Error(ctx, ec.Recover(ctx, r))
 12641  					ret = nil
 12642  				}
 12643  			}()
 12644  			if !isLen1 {
 12645  				defer wg.Done()
 12646  			}
 12647  			ret[i] = ec.marshalN__Directive2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐDirective(ctx, sel, v[i])
 12648  		}
 12649  		if isLen1 {
 12650  			f(i)
 12651  		} else {
 12652  			go f(i)
 12653  		}
 12654  
 12655  	}
 12656  	wg.Wait()
 12657  	return ret
 12658  }
 12659  
 12660  func (ec *executionContext) unmarshalN__DirectiveLocation2string(ctx context.Context, v interface{}) (string, error) {
 12661  	return graphql.UnmarshalString(v)
 12662  }
 12663  
 12664  func (ec *executionContext) marshalN__DirectiveLocation2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 12665  	res := graphql.MarshalString(v)
 12666  	if res == graphql.Null {
 12667  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12668  			ec.Errorf(ctx, "must not be null")
 12669  		}
 12670  	}
 12671  	return res
 12672  }
 12673  
 12674  func (ec *executionContext) unmarshalN__DirectiveLocation2ᚕstringᚄ(ctx context.Context, v interface{}) ([]string, error) {
 12675  	var vSlice []interface{}
 12676  	if v != nil {
 12677  		if tmp1, ok := v.([]interface{}); ok {
 12678  			vSlice = tmp1
 12679  		} else {
 12680  			vSlice = []interface{}{v}
 12681  		}
 12682  	}
 12683  	var err error
 12684  	res := make([]string, len(vSlice))
 12685  	for i := range vSlice {
 12686  		res[i], err = ec.unmarshalN__DirectiveLocation2string(ctx, vSlice[i])
 12687  		if err != nil {
 12688  			return nil, err
 12689  		}
 12690  	}
 12691  	return res, nil
 12692  }
 12693  
 12694  func (ec *executionContext) marshalN__DirectiveLocation2ᚕstringᚄ(ctx context.Context, sel ast.SelectionSet, v []string) graphql.Marshaler {
 12695  	ret := make(graphql.Array, len(v))
 12696  	var wg sync.WaitGroup
 12697  	isLen1 := len(v) == 1
 12698  	if !isLen1 {
 12699  		wg.Add(len(v))
 12700  	}
 12701  	for i := range v {
 12702  		i := i
 12703  		fc := &graphql.FieldContext{
 12704  			Index:  &i,
 12705  			Result: &v[i],
 12706  		}
 12707  		ctx := graphql.WithFieldContext(ctx, fc)
 12708  		f := func(i int) {
 12709  			defer func() {
 12710  				if r := recover(); r != nil {
 12711  					ec.Error(ctx, ec.Recover(ctx, r))
 12712  					ret = nil
 12713  				}
 12714  			}()
 12715  			if !isLen1 {
 12716  				defer wg.Done()
 12717  			}
 12718  			ret[i] = ec.marshalN__DirectiveLocation2string(ctx, sel, v[i])
 12719  		}
 12720  		if isLen1 {
 12721  			f(i)
 12722  		} else {
 12723  			go f(i)
 12724  		}
 12725  
 12726  	}
 12727  	wg.Wait()
 12728  	return ret
 12729  }
 12730  
 12731  func (ec *executionContext) marshalN__EnumValue2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐEnumValue(ctx context.Context, sel ast.SelectionSet, v introspection.EnumValue) graphql.Marshaler {
 12732  	return ec.___EnumValue(ctx, sel, &v)
 12733  }
 12734  
 12735  func (ec *executionContext) marshalN__Field2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐField(ctx context.Context, sel ast.SelectionSet, v introspection.Field) graphql.Marshaler {
 12736  	return ec.___Field(ctx, sel, &v)
 12737  }
 12738  
 12739  func (ec *executionContext) marshalN__InputValue2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValue(ctx context.Context, sel ast.SelectionSet, v introspection.InputValue) graphql.Marshaler {
 12740  	return ec.___InputValue(ctx, sel, &v)
 12741  }
 12742  
 12743  func (ec *executionContext) marshalN__InputValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValueᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.InputValue) graphql.Marshaler {
 12744  	ret := make(graphql.Array, len(v))
 12745  	var wg sync.WaitGroup
 12746  	isLen1 := len(v) == 1
 12747  	if !isLen1 {
 12748  		wg.Add(len(v))
 12749  	}
 12750  	for i := range v {
 12751  		i := i
 12752  		fc := &graphql.FieldContext{
 12753  			Index:  &i,
 12754  			Result: &v[i],
 12755  		}
 12756  		ctx := graphql.WithFieldContext(ctx, fc)
 12757  		f := func(i int) {
 12758  			defer func() {
 12759  				if r := recover(); r != nil {
 12760  					ec.Error(ctx, ec.Recover(ctx, r))
 12761  					ret = nil
 12762  				}
 12763  			}()
 12764  			if !isLen1 {
 12765  				defer wg.Done()
 12766  			}
 12767  			ret[i] = ec.marshalN__InputValue2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValue(ctx, sel, v[i])
 12768  		}
 12769  		if isLen1 {
 12770  			f(i)
 12771  		} else {
 12772  			go f(i)
 12773  		}
 12774  
 12775  	}
 12776  	wg.Wait()
 12777  	return ret
 12778  }
 12779  
 12780  func (ec *executionContext) marshalN__Type2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx context.Context, sel ast.SelectionSet, v introspection.Type) graphql.Marshaler {
 12781  	return ec.___Type(ctx, sel, &v)
 12782  }
 12783  
 12784  func (ec *executionContext) marshalN__Type2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐTypeᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.Type) graphql.Marshaler {
 12785  	ret := make(graphql.Array, len(v))
 12786  	var wg sync.WaitGroup
 12787  	isLen1 := len(v) == 1
 12788  	if !isLen1 {
 12789  		wg.Add(len(v))
 12790  	}
 12791  	for i := range v {
 12792  		i := i
 12793  		fc := &graphql.FieldContext{
 12794  			Index:  &i,
 12795  			Result: &v[i],
 12796  		}
 12797  		ctx := graphql.WithFieldContext(ctx, fc)
 12798  		f := func(i int) {
 12799  			defer func() {
 12800  				if r := recover(); r != nil {
 12801  					ec.Error(ctx, ec.Recover(ctx, r))
 12802  					ret = nil
 12803  				}
 12804  			}()
 12805  			if !isLen1 {
 12806  				defer wg.Done()
 12807  			}
 12808  			ret[i] = ec.marshalN__Type2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, sel, v[i])
 12809  		}
 12810  		if isLen1 {
 12811  			f(i)
 12812  		} else {
 12813  			go f(i)
 12814  		}
 12815  
 12816  	}
 12817  	wg.Wait()
 12818  	return ret
 12819  }
 12820  
 12821  func (ec *executionContext) marshalN__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx context.Context, sel ast.SelectionSet, v *introspection.Type) graphql.Marshaler {
 12822  	if v == nil {
 12823  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12824  			ec.Errorf(ctx, "must not be null")
 12825  		}
 12826  		return graphql.Null
 12827  	}
 12828  	return ec.___Type(ctx, sel, v)
 12829  }
 12830  
 12831  func (ec *executionContext) unmarshalN__TypeKind2string(ctx context.Context, v interface{}) (string, error) {
 12832  	return graphql.UnmarshalString(v)
 12833  }
 12834  
 12835  func (ec *executionContext) marshalN__TypeKind2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 12836  	res := graphql.MarshalString(v)
 12837  	if res == graphql.Null {
 12838  		if !graphql.HasFieldError(ctx, graphql.GetFieldContext(ctx)) {
 12839  			ec.Errorf(ctx, "must not be null")
 12840  		}
 12841  	}
 12842  	return res
 12843  }
 12844  
 12845  func (ec *executionContext) marshalOAnimal2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐAnimal(ctx context.Context, sel ast.SelectionSet, v Animal) graphql.Marshaler {
 12846  	if v == nil {
 12847  		return graphql.Null
 12848  	}
 12849  	return ec._Animal(ctx, sel, v)
 12850  }
 12851  
 12852  func (ec *executionContext) marshalOAutobind2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐAutobind(ctx context.Context, sel ast.SelectionSet, v Autobind) graphql.Marshaler {
 12853  	return ec._Autobind(ctx, sel, &v)
 12854  }
 12855  
 12856  func (ec *executionContext) marshalOAutobind2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐAutobind(ctx context.Context, sel ast.SelectionSet, v *Autobind) graphql.Marshaler {
 12857  	if v == nil {
 12858  		return graphql.Null
 12859  	}
 12860  	return ec._Autobind(ctx, sel, v)
 12861  }
 12862  
 12863  func (ec *executionContext) marshalOBackedByInterface2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐBackedByInterface(ctx context.Context, sel ast.SelectionSet, v BackedByInterface) graphql.Marshaler {
 12864  	if v == nil {
 12865  		return graphql.Null
 12866  	}
 12867  	return ec._BackedByInterface(ctx, sel, v)
 12868  }
 12869  
 12870  func (ec *executionContext) unmarshalOBoolean2bool(ctx context.Context, v interface{}) (bool, error) {
 12871  	return graphql.UnmarshalBoolean(v)
 12872  }
 12873  
 12874  func (ec *executionContext) marshalOBoolean2bool(ctx context.Context, sel ast.SelectionSet, v bool) graphql.Marshaler {
 12875  	return graphql.MarshalBoolean(v)
 12876  }
 12877  
 12878  func (ec *executionContext) unmarshalOBoolean2ᚖbool(ctx context.Context, v interface{}) (*bool, error) {
 12879  	if v == nil {
 12880  		return nil, nil
 12881  	}
 12882  	res, err := ec.unmarshalOBoolean2bool(ctx, v)
 12883  	return &res, err
 12884  }
 12885  
 12886  func (ec *executionContext) marshalOBoolean2ᚖbool(ctx context.Context, sel ast.SelectionSet, v *bool) graphql.Marshaler {
 12887  	if v == nil {
 12888  		return graphql.Null
 12889  	}
 12890  	return ec.marshalOBoolean2bool(ctx, sel, *v)
 12891  }
 12892  
 12893  func (ec *executionContext) unmarshalOChanges2map(ctx context.Context, v interface{}) (map[string]interface{}, error) {
 12894  	if v == nil {
 12895  		return nil, nil
 12896  	}
 12897  	return v.(map[string]interface{}), nil
 12898  }
 12899  
 12900  func (ec *executionContext) marshalOCheckIssue8962githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx context.Context, sel ast.SelectionSet, v CheckIssue896) graphql.Marshaler {
 12901  	return ec._CheckIssue896(ctx, sel, &v)
 12902  }
 12903  
 12904  func (ec *executionContext) marshalOCheckIssue8962ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx context.Context, sel ast.SelectionSet, v []*CheckIssue896) graphql.Marshaler {
 12905  	if v == nil {
 12906  		return graphql.Null
 12907  	}
 12908  	ret := make(graphql.Array, len(v))
 12909  	var wg sync.WaitGroup
 12910  	isLen1 := len(v) == 1
 12911  	if !isLen1 {
 12912  		wg.Add(len(v))
 12913  	}
 12914  	for i := range v {
 12915  		i := i
 12916  		fc := &graphql.FieldContext{
 12917  			Index:  &i,
 12918  			Result: &v[i],
 12919  		}
 12920  		ctx := graphql.WithFieldContext(ctx, fc)
 12921  		f := func(i int) {
 12922  			defer func() {
 12923  				if r := recover(); r != nil {
 12924  					ec.Error(ctx, ec.Recover(ctx, r))
 12925  					ret = nil
 12926  				}
 12927  			}()
 12928  			if !isLen1 {
 12929  				defer wg.Done()
 12930  			}
 12931  			ret[i] = ec.marshalOCheckIssue8962ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx, sel, v[i])
 12932  		}
 12933  		if isLen1 {
 12934  			f(i)
 12935  		} else {
 12936  			go f(i)
 12937  		}
 12938  
 12939  	}
 12940  	wg.Wait()
 12941  	return ret
 12942  }
 12943  
 12944  func (ec *executionContext) marshalOCheckIssue8962ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896ᚄ(ctx context.Context, sel ast.SelectionSet, v []*CheckIssue896) graphql.Marshaler {
 12945  	if v == nil {
 12946  		return graphql.Null
 12947  	}
 12948  	ret := make(graphql.Array, len(v))
 12949  	var wg sync.WaitGroup
 12950  	isLen1 := len(v) == 1
 12951  	if !isLen1 {
 12952  		wg.Add(len(v))
 12953  	}
 12954  	for i := range v {
 12955  		i := i
 12956  		fc := &graphql.FieldContext{
 12957  			Index:  &i,
 12958  			Result: &v[i],
 12959  		}
 12960  		ctx := graphql.WithFieldContext(ctx, fc)
 12961  		f := func(i int) {
 12962  			defer func() {
 12963  				if r := recover(); r != nil {
 12964  					ec.Error(ctx, ec.Recover(ctx, r))
 12965  					ret = nil
 12966  				}
 12967  			}()
 12968  			if !isLen1 {
 12969  				defer wg.Done()
 12970  			}
 12971  			ret[i] = ec.marshalNCheckIssue8962ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx, sel, v[i])
 12972  		}
 12973  		if isLen1 {
 12974  			f(i)
 12975  		} else {
 12976  			go f(i)
 12977  		}
 12978  
 12979  	}
 12980  	wg.Wait()
 12981  	return ret
 12982  }
 12983  
 12984  func (ec *executionContext) marshalOCheckIssue8962ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCheckIssue896(ctx context.Context, sel ast.SelectionSet, v *CheckIssue896) graphql.Marshaler {
 12985  	if v == nil {
 12986  		return graphql.Null
 12987  	}
 12988  	return ec._CheckIssue896(ctx, sel, v)
 12989  }
 12990  
 12991  func (ec *executionContext) marshalOCircle2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCircle(ctx context.Context, sel ast.SelectionSet, v Circle) graphql.Marshaler {
 12992  	return ec._Circle(ctx, sel, &v)
 12993  }
 12994  
 12995  func (ec *executionContext) marshalOCircle2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐCircle(ctx context.Context, sel ast.SelectionSet, v *Circle) graphql.Marshaler {
 12996  	if v == nil {
 12997  		return graphql.Null
 12998  	}
 12999  	return ec._Circle(ctx, sel, v)
 13000  }
 13001  
 13002  func (ec *executionContext) unmarshalODefaultScalarImplementation2string(ctx context.Context, v interface{}) (string, error) {
 13003  	return graphql.UnmarshalString(v)
 13004  }
 13005  
 13006  func (ec *executionContext) marshalODefaultScalarImplementation2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 13007  	return graphql.MarshalString(v)
 13008  }
 13009  
 13010  func (ec *executionContext) unmarshalODefaultScalarImplementation2ᚖstring(ctx context.Context, v interface{}) (*string, error) {
 13011  	if v == nil {
 13012  		return nil, nil
 13013  	}
 13014  	res, err := ec.unmarshalODefaultScalarImplementation2string(ctx, v)
 13015  	return &res, err
 13016  }
 13017  
 13018  func (ec *executionContext) marshalODefaultScalarImplementation2ᚖstring(ctx context.Context, sel ast.SelectionSet, v *string) graphql.Marshaler {
 13019  	if v == nil {
 13020  		return graphql.Null
 13021  	}
 13022  	return ec.marshalODefaultScalarImplementation2string(ctx, sel, *v)
 13023  }
 13024  
 13025  func (ec *executionContext) marshalOEmbeddedCase12githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase1(ctx context.Context, sel ast.SelectionSet, v EmbeddedCase1) graphql.Marshaler {
 13026  	return ec._EmbeddedCase1(ctx, sel, &v)
 13027  }
 13028  
 13029  func (ec *executionContext) marshalOEmbeddedCase12ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase1(ctx context.Context, sel ast.SelectionSet, v *EmbeddedCase1) graphql.Marshaler {
 13030  	if v == nil {
 13031  		return graphql.Null
 13032  	}
 13033  	return ec._EmbeddedCase1(ctx, sel, v)
 13034  }
 13035  
 13036  func (ec *executionContext) marshalOEmbeddedCase22githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase2(ctx context.Context, sel ast.SelectionSet, v EmbeddedCase2) graphql.Marshaler {
 13037  	return ec._EmbeddedCase2(ctx, sel, &v)
 13038  }
 13039  
 13040  func (ec *executionContext) marshalOEmbeddedCase22ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase2(ctx context.Context, sel ast.SelectionSet, v *EmbeddedCase2) graphql.Marshaler {
 13041  	if v == nil {
 13042  		return graphql.Null
 13043  	}
 13044  	return ec._EmbeddedCase2(ctx, sel, v)
 13045  }
 13046  
 13047  func (ec *executionContext) marshalOEmbeddedCase32githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase3(ctx context.Context, sel ast.SelectionSet, v EmbeddedCase3) graphql.Marshaler {
 13048  	return ec._EmbeddedCase3(ctx, sel, &v)
 13049  }
 13050  
 13051  func (ec *executionContext) marshalOEmbeddedCase32ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐEmbeddedCase3(ctx context.Context, sel ast.SelectionSet, v *EmbeddedCase3) graphql.Marshaler {
 13052  	if v == nil {
 13053  		return graphql.Null
 13054  	}
 13055  	return ec._EmbeddedCase3(ctx, sel, v)
 13056  }
 13057  
 13058  func (ec *executionContext) marshalOError2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx context.Context, sel ast.SelectionSet, v Error) graphql.Marshaler {
 13059  	return ec._Error(ctx, sel, &v)
 13060  }
 13061  
 13062  func (ec *executionContext) marshalOError2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐError(ctx context.Context, sel ast.SelectionSet, v *Error) graphql.Marshaler {
 13063  	if v == nil {
 13064  		return graphql.Null
 13065  	}
 13066  	return ec._Error(ctx, sel, v)
 13067  }
 13068  
 13069  func (ec *executionContext) marshalOErrors2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐErrors(ctx context.Context, sel ast.SelectionSet, v Errors) graphql.Marshaler {
 13070  	return ec._Errors(ctx, sel, &v)
 13071  }
 13072  
 13073  func (ec *executionContext) marshalOErrors2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐErrors(ctx context.Context, sel ast.SelectionSet, v *Errors) graphql.Marshaler {
 13074  	if v == nil {
 13075  		return graphql.Null
 13076  	}
 13077  	return ec._Errors(ctx, sel, v)
 13078  }
 13079  
 13080  func (ec *executionContext) unmarshalOFloat2float64(ctx context.Context, v interface{}) (float64, error) {
 13081  	return graphql.UnmarshalFloat(v)
 13082  }
 13083  
 13084  func (ec *executionContext) marshalOFloat2float64(ctx context.Context, sel ast.SelectionSet, v float64) graphql.Marshaler {
 13085  	return graphql.MarshalFloat(v)
 13086  }
 13087  
 13088  func (ec *executionContext) unmarshalOInnerDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx context.Context, v interface{}) (InnerDirectives, error) {
 13089  	return ec.unmarshalInputInnerDirectives(ctx, v)
 13090  }
 13091  
 13092  func (ec *executionContext) unmarshalOInnerDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx context.Context, v interface{}) (*InnerDirectives, error) {
 13093  	if v == nil {
 13094  		return nil, nil
 13095  	}
 13096  	res, err := ec.unmarshalOInnerDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInnerDirectives(ctx, v)
 13097  	return &res, err
 13098  }
 13099  
 13100  func (ec *executionContext) unmarshalOInputDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputDirectives(ctx context.Context, v interface{}) (InputDirectives, error) {
 13101  	return ec.unmarshalInputInputDirectives(ctx, v)
 13102  }
 13103  
 13104  func (ec *executionContext) unmarshalOInputDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputDirectives(ctx context.Context, v interface{}) (*InputDirectives, error) {
 13105  	if v == nil {
 13106  		return nil, nil
 13107  	}
 13108  	res, err := ec.unmarshalOInputDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputDirectives(ctx, v)
 13109  	return &res, err
 13110  }
 13111  
 13112  func (ec *executionContext) unmarshalOInputWithEnumValue2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputWithEnumValue(ctx context.Context, v interface{}) (InputWithEnumValue, error) {
 13113  	return ec.unmarshalInputInputWithEnumValue(ctx, v)
 13114  }
 13115  
 13116  func (ec *executionContext) unmarshalOInputWithEnumValue2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputWithEnumValue(ctx context.Context, v interface{}) (*InputWithEnumValue, error) {
 13117  	if v == nil {
 13118  		return nil, nil
 13119  	}
 13120  	res, err := ec.unmarshalOInputWithEnumValue2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐInputWithEnumValue(ctx, v)
 13121  	return &res, err
 13122  }
 13123  
 13124  func (ec *executionContext) unmarshalOInt2int(ctx context.Context, v interface{}) (int, error) {
 13125  	return graphql.UnmarshalInt(v)
 13126  }
 13127  
 13128  func (ec *executionContext) marshalOInt2int(ctx context.Context, sel ast.SelectionSet, v int) graphql.Marshaler {
 13129  	return graphql.MarshalInt(v)
 13130  }
 13131  
 13132  func (ec *executionContext) unmarshalOInt2ᚖint(ctx context.Context, v interface{}) (*int, error) {
 13133  	if v == nil {
 13134  		return nil, nil
 13135  	}
 13136  	res, err := ec.unmarshalOInt2int(ctx, v)
 13137  	return &res, err
 13138  }
 13139  
 13140  func (ec *executionContext) marshalOInt2ᚖint(ctx context.Context, sel ast.SelectionSet, v *int) graphql.Marshaler {
 13141  	if v == nil {
 13142  		return graphql.Null
 13143  	}
 13144  	return ec.marshalOInt2int(ctx, sel, *v)
 13145  }
 13146  
 13147  func (ec *executionContext) marshalOInvalidIdentifier2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋinvalidᚑpackagenameᚐInvalidIdentifier(ctx context.Context, sel ast.SelectionSet, v invalid_packagename.InvalidIdentifier) graphql.Marshaler {
 13148  	return ec._InvalidIdentifier(ctx, sel, &v)
 13149  }
 13150  
 13151  func (ec *executionContext) marshalOInvalidIdentifier2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋinvalidᚑpackagenameᚐInvalidIdentifier(ctx context.Context, sel ast.SelectionSet, v *invalid_packagename.InvalidIdentifier) graphql.Marshaler {
 13152  	if v == nil {
 13153  		return graphql.Null
 13154  	}
 13155  	return ec._InvalidIdentifier(ctx, sel, v)
 13156  }
 13157  
 13158  func (ec *executionContext) marshalOIt2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋintrospectionᚐIt(ctx context.Context, sel ast.SelectionSet, v introspection1.It) graphql.Marshaler {
 13159  	return ec._It(ctx, sel, &v)
 13160  }
 13161  
 13162  func (ec *executionContext) marshalOIt2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚋintrospectionᚐIt(ctx context.Context, sel ast.SelectionSet, v *introspection1.It) graphql.Marshaler {
 13163  	if v == nil {
 13164  		return graphql.Null
 13165  	}
 13166  	return ec._It(ctx, sel, v)
 13167  }
 13168  
 13169  func (ec *executionContext) unmarshalOMapStringInterfaceInput2map(ctx context.Context, v interface{}) (map[string]interface{}, error) {
 13170  	if v == nil {
 13171  		return nil, nil
 13172  	}
 13173  	return v.(map[string]interface{}), nil
 13174  }
 13175  
 13176  func (ec *executionContext) marshalOMapStringInterfaceType2map(ctx context.Context, sel ast.SelectionSet, v map[string]interface{}) graphql.Marshaler {
 13177  	if v == nil {
 13178  		return graphql.Null
 13179  	}
 13180  	return ec._MapStringInterfaceType(ctx, sel, v)
 13181  }
 13182  
 13183  func (ec *executionContext) marshalOModelMethods2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐModelMethods(ctx context.Context, sel ast.SelectionSet, v ModelMethods) graphql.Marshaler {
 13184  	return ec._ModelMethods(ctx, sel, &v)
 13185  }
 13186  
 13187  func (ec *executionContext) marshalOModelMethods2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐModelMethods(ctx context.Context, sel ast.SelectionSet, v *ModelMethods) graphql.Marshaler {
 13188  	if v == nil {
 13189  		return graphql.Null
 13190  	}
 13191  	return ec._ModelMethods(ctx, sel, v)
 13192  }
 13193  
 13194  func (ec *executionContext) unmarshalONestedMapInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNestedMapInput(ctx context.Context, v interface{}) (NestedMapInput, error) {
 13195  	return ec.unmarshalInputNestedMapInput(ctx, v)
 13196  }
 13197  
 13198  func (ec *executionContext) unmarshalONestedMapInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNestedMapInput(ctx context.Context, v interface{}) (*NestedMapInput, error) {
 13199  	if v == nil {
 13200  		return nil, nil
 13201  	}
 13202  	res, err := ec.unmarshalONestedMapInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐNestedMapInput(ctx, v)
 13203  	return &res, err
 13204  }
 13205  
 13206  func (ec *executionContext) marshalOObjectDirectives2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐObjectDirectives(ctx context.Context, sel ast.SelectionSet, v ObjectDirectives) graphql.Marshaler {
 13207  	return ec._ObjectDirectives(ctx, sel, &v)
 13208  }
 13209  
 13210  func (ec *executionContext) marshalOObjectDirectives2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐObjectDirectives(ctx context.Context, sel ast.SelectionSet, v *ObjectDirectives) graphql.Marshaler {
 13211  	if v == nil {
 13212  		return graphql.Null
 13213  	}
 13214  	return ec._ObjectDirectives(ctx, sel, v)
 13215  }
 13216  
 13217  func (ec *executionContext) marshalOObjectDirectivesWithCustomGoModel2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐObjectDirectivesWithCustomGoModel(ctx context.Context, sel ast.SelectionSet, v ObjectDirectivesWithCustomGoModel) graphql.Marshaler {
 13218  	return ec._ObjectDirectivesWithCustomGoModel(ctx, sel, &v)
 13219  }
 13220  
 13221  func (ec *executionContext) marshalOObjectDirectivesWithCustomGoModel2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐObjectDirectivesWithCustomGoModel(ctx context.Context, sel ast.SelectionSet, v *ObjectDirectivesWithCustomGoModel) graphql.Marshaler {
 13222  	if v == nil {
 13223  		return graphql.Null
 13224  	}
 13225  	return ec._ObjectDirectivesWithCustomGoModel(ctx, sel, v)
 13226  }
 13227  
 13228  func (ec *executionContext) unmarshalOOuterInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx context.Context, v interface{}) (OuterInput, error) {
 13229  	return ec.unmarshalInputOuterInput(ctx, v)
 13230  }
 13231  
 13232  func (ec *executionContext) unmarshalOOuterInput2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx context.Context, v interface{}) ([][]*OuterInput, error) {
 13233  	var vSlice []interface{}
 13234  	if v != nil {
 13235  		if tmp1, ok := v.([]interface{}); ok {
 13236  			vSlice = tmp1
 13237  		} else {
 13238  			vSlice = []interface{}{v}
 13239  		}
 13240  	}
 13241  	var err error
 13242  	res := make([][]*OuterInput, len(vSlice))
 13243  	for i := range vSlice {
 13244  		res[i], err = ec.unmarshalOOuterInput2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx, vSlice[i])
 13245  		if err != nil {
 13246  			return nil, err
 13247  		}
 13248  	}
 13249  	return res, nil
 13250  }
 13251  
 13252  func (ec *executionContext) unmarshalOOuterInput2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx context.Context, v interface{}) ([]*OuterInput, error) {
 13253  	var vSlice []interface{}
 13254  	if v != nil {
 13255  		if tmp1, ok := v.([]interface{}); ok {
 13256  			vSlice = tmp1
 13257  		} else {
 13258  			vSlice = []interface{}{v}
 13259  		}
 13260  	}
 13261  	var err error
 13262  	res := make([]*OuterInput, len(vSlice))
 13263  	for i := range vSlice {
 13264  		res[i], err = ec.unmarshalOOuterInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx, vSlice[i])
 13265  		if err != nil {
 13266  			return nil, err
 13267  		}
 13268  	}
 13269  	return res, nil
 13270  }
 13271  
 13272  func (ec *executionContext) unmarshalOOuterInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx context.Context, v interface{}) (*OuterInput, error) {
 13273  	if v == nil {
 13274  		return nil, nil
 13275  	}
 13276  	res, err := ec.unmarshalOOuterInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterInput(ctx, v)
 13277  	return &res, err
 13278  }
 13279  
 13280  func (ec *executionContext) marshalOOuterObject2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v OuterObject) graphql.Marshaler {
 13281  	return ec._OuterObject(ctx, sel, &v)
 13282  }
 13283  
 13284  func (ec *executionContext) marshalOOuterObject2ᚕᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v [][]*OuterObject) graphql.Marshaler {
 13285  	if v == nil {
 13286  		return graphql.Null
 13287  	}
 13288  	ret := make(graphql.Array, len(v))
 13289  	var wg sync.WaitGroup
 13290  	isLen1 := len(v) == 1
 13291  	if !isLen1 {
 13292  		wg.Add(len(v))
 13293  	}
 13294  	for i := range v {
 13295  		i := i
 13296  		fc := &graphql.FieldContext{
 13297  			Index:  &i,
 13298  			Result: &v[i],
 13299  		}
 13300  		ctx := graphql.WithFieldContext(ctx, fc)
 13301  		f := func(i int) {
 13302  			defer func() {
 13303  				if r := recover(); r != nil {
 13304  					ec.Error(ctx, ec.Recover(ctx, r))
 13305  					ret = nil
 13306  				}
 13307  			}()
 13308  			if !isLen1 {
 13309  				defer wg.Done()
 13310  			}
 13311  			ret[i] = ec.marshalOOuterObject2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx, sel, v[i])
 13312  		}
 13313  		if isLen1 {
 13314  			f(i)
 13315  		} else {
 13316  			go f(i)
 13317  		}
 13318  
 13319  	}
 13320  	wg.Wait()
 13321  	return ret
 13322  }
 13323  
 13324  func (ec *executionContext) marshalOOuterObject2ᚕᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v []*OuterObject) graphql.Marshaler {
 13325  	if v == nil {
 13326  		return graphql.Null
 13327  	}
 13328  	ret := make(graphql.Array, len(v))
 13329  	var wg sync.WaitGroup
 13330  	isLen1 := len(v) == 1
 13331  	if !isLen1 {
 13332  		wg.Add(len(v))
 13333  	}
 13334  	for i := range v {
 13335  		i := i
 13336  		fc := &graphql.FieldContext{
 13337  			Index:  &i,
 13338  			Result: &v[i],
 13339  		}
 13340  		ctx := graphql.WithFieldContext(ctx, fc)
 13341  		f := func(i int) {
 13342  			defer func() {
 13343  				if r := recover(); r != nil {
 13344  					ec.Error(ctx, ec.Recover(ctx, r))
 13345  					ret = nil
 13346  				}
 13347  			}()
 13348  			if !isLen1 {
 13349  				defer wg.Done()
 13350  			}
 13351  			ret[i] = ec.marshalOOuterObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx, sel, v[i])
 13352  		}
 13353  		if isLen1 {
 13354  			f(i)
 13355  		} else {
 13356  			go f(i)
 13357  		}
 13358  
 13359  	}
 13360  	wg.Wait()
 13361  	return ret
 13362  }
 13363  
 13364  func (ec *executionContext) marshalOOuterObject2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOuterObject(ctx context.Context, sel ast.SelectionSet, v *OuterObject) graphql.Marshaler {
 13365  	if v == nil {
 13366  		return graphql.Null
 13367  	}
 13368  	return ec._OuterObject(ctx, sel, v)
 13369  }
 13370  
 13371  func (ec *executionContext) marshalOOverlappingFields2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOverlappingFields(ctx context.Context, sel ast.SelectionSet, v OverlappingFields) graphql.Marshaler {
 13372  	return ec._OverlappingFields(ctx, sel, &v)
 13373  }
 13374  
 13375  func (ec *executionContext) marshalOOverlappingFields2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐOverlappingFields(ctx context.Context, sel ast.SelectionSet, v *OverlappingFields) graphql.Marshaler {
 13376  	if v == nil {
 13377  		return graphql.Null
 13378  	}
 13379  	return ec._OverlappingFields(ctx, sel, v)
 13380  }
 13381  
 13382  func (ec *executionContext) marshalOPanics2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPanics(ctx context.Context, sel ast.SelectionSet, v Panics) graphql.Marshaler {
 13383  	return ec._Panics(ctx, sel, &v)
 13384  }
 13385  
 13386  func (ec *executionContext) marshalOPanics2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐPanics(ctx context.Context, sel ast.SelectionSet, v *Panics) graphql.Marshaler {
 13387  	if v == nil {
 13388  		return graphql.Null
 13389  	}
 13390  	return ec._Panics(ctx, sel, v)
 13391  }
 13392  
 13393  func (ec *executionContext) unmarshalORecursiveInputSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSlice(ctx context.Context, v interface{}) (RecursiveInputSlice, error) {
 13394  	return ec.unmarshalInputRecursiveInputSlice(ctx, v)
 13395  }
 13396  
 13397  func (ec *executionContext) unmarshalORecursiveInputSlice2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSliceᚄ(ctx context.Context, v interface{}) ([]RecursiveInputSlice, error) {
 13398  	var vSlice []interface{}
 13399  	if v != nil {
 13400  		if tmp1, ok := v.([]interface{}); ok {
 13401  			vSlice = tmp1
 13402  		} else {
 13403  			vSlice = []interface{}{v}
 13404  		}
 13405  	}
 13406  	var err error
 13407  	res := make([]RecursiveInputSlice, len(vSlice))
 13408  	for i := range vSlice {
 13409  		res[i], err = ec.unmarshalNRecursiveInputSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSlice(ctx, vSlice[i])
 13410  		if err != nil {
 13411  			return nil, err
 13412  		}
 13413  	}
 13414  	return res, nil
 13415  }
 13416  
 13417  func (ec *executionContext) unmarshalORecursiveInputSlice2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSlice(ctx context.Context, v interface{}) (*RecursiveInputSlice, error) {
 13418  	if v == nil {
 13419  		return nil, nil
 13420  	}
 13421  	res, err := ec.unmarshalORecursiveInputSlice2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐRecursiveInputSlice(ctx, v)
 13422  	return &res, err
 13423  }
 13424  
 13425  func (ec *executionContext) marshalOShape2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShape(ctx context.Context, sel ast.SelectionSet, v Shape) graphql.Marshaler {
 13426  	if v == nil {
 13427  		return graphql.Null
 13428  	}
 13429  	return ec._Shape(ctx, sel, v)
 13430  }
 13431  
 13432  func (ec *executionContext) marshalOShape2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShape(ctx context.Context, sel ast.SelectionSet, v []Shape) graphql.Marshaler {
 13433  	if v == nil {
 13434  		return graphql.Null
 13435  	}
 13436  	ret := make(graphql.Array, len(v))
 13437  	var wg sync.WaitGroup
 13438  	isLen1 := len(v) == 1
 13439  	if !isLen1 {
 13440  		wg.Add(len(v))
 13441  	}
 13442  	for i := range v {
 13443  		i := i
 13444  		fc := &graphql.FieldContext{
 13445  			Index:  &i,
 13446  			Result: &v[i],
 13447  		}
 13448  		ctx := graphql.WithFieldContext(ctx, fc)
 13449  		f := func(i int) {
 13450  			defer func() {
 13451  				if r := recover(); r != nil {
 13452  					ec.Error(ctx, ec.Recover(ctx, r))
 13453  					ret = nil
 13454  				}
 13455  			}()
 13456  			if !isLen1 {
 13457  				defer wg.Done()
 13458  			}
 13459  			ret[i] = ec.marshalOShape2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐShape(ctx, sel, v[i])
 13460  		}
 13461  		if isLen1 {
 13462  			f(i)
 13463  		} else {
 13464  			go f(i)
 13465  		}
 13466  
 13467  	}
 13468  	wg.Wait()
 13469  	return ret
 13470  }
 13471  
 13472  func (ec *executionContext) marshalOSlices2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐSlices(ctx context.Context, sel ast.SelectionSet, v Slices) graphql.Marshaler {
 13473  	return ec._Slices(ctx, sel, &v)
 13474  }
 13475  
 13476  func (ec *executionContext) marshalOSlices2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐSlices(ctx context.Context, sel ast.SelectionSet, v *Slices) graphql.Marshaler {
 13477  	if v == nil {
 13478  		return graphql.Null
 13479  	}
 13480  	return ec._Slices(ctx, sel, v)
 13481  }
 13482  
 13483  func (ec *executionContext) unmarshalOString2string(ctx context.Context, v interface{}) (string, error) {
 13484  	return graphql.UnmarshalString(v)
 13485  }
 13486  
 13487  func (ec *executionContext) marshalOString2string(ctx context.Context, sel ast.SelectionSet, v string) graphql.Marshaler {
 13488  	return graphql.MarshalString(v)
 13489  }
 13490  
 13491  func (ec *executionContext) unmarshalOString2ᚕstringᚄ(ctx context.Context, v interface{}) ([]string, error) {
 13492  	var vSlice []interface{}
 13493  	if v != nil {
 13494  		if tmp1, ok := v.([]interface{}); ok {
 13495  			vSlice = tmp1
 13496  		} else {
 13497  			vSlice = []interface{}{v}
 13498  		}
 13499  	}
 13500  	var err error
 13501  	res := make([]string, len(vSlice))
 13502  	for i := range vSlice {
 13503  		res[i], err = ec.unmarshalNString2string(ctx, vSlice[i])
 13504  		if err != nil {
 13505  			return nil, err
 13506  		}
 13507  	}
 13508  	return res, nil
 13509  }
 13510  
 13511  func (ec *executionContext) marshalOString2ᚕstringᚄ(ctx context.Context, sel ast.SelectionSet, v []string) graphql.Marshaler {
 13512  	if v == nil {
 13513  		return graphql.Null
 13514  	}
 13515  	ret := make(graphql.Array, len(v))
 13516  	for i := range v {
 13517  		ret[i] = ec.marshalNString2string(ctx, sel, v[i])
 13518  	}
 13519  
 13520  	return ret
 13521  }
 13522  
 13523  func (ec *executionContext) unmarshalOString2ᚕᚖstring(ctx context.Context, v interface{}) ([]*string, error) {
 13524  	var vSlice []interface{}
 13525  	if v != nil {
 13526  		if tmp1, ok := v.([]interface{}); ok {
 13527  			vSlice = tmp1
 13528  		} else {
 13529  			vSlice = []interface{}{v}
 13530  		}
 13531  	}
 13532  	var err error
 13533  	res := make([]*string, len(vSlice))
 13534  	for i := range vSlice {
 13535  		res[i], err = ec.unmarshalOString2ᚖstring(ctx, vSlice[i])
 13536  		if err != nil {
 13537  			return nil, err
 13538  		}
 13539  	}
 13540  	return res, nil
 13541  }
 13542  
 13543  func (ec *executionContext) marshalOString2ᚕᚖstring(ctx context.Context, sel ast.SelectionSet, v []*string) graphql.Marshaler {
 13544  	if v == nil {
 13545  		return graphql.Null
 13546  	}
 13547  	ret := make(graphql.Array, len(v))
 13548  	for i := range v {
 13549  		ret[i] = ec.marshalOString2ᚖstring(ctx, sel, v[i])
 13550  	}
 13551  
 13552  	return ret
 13553  }
 13554  
 13555  func (ec *executionContext) unmarshalOString2ᚖstring(ctx context.Context, v interface{}) (*string, error) {
 13556  	if v == nil {
 13557  		return nil, nil
 13558  	}
 13559  	res, err := ec.unmarshalOString2string(ctx, v)
 13560  	return &res, err
 13561  }
 13562  
 13563  func (ec *executionContext) marshalOString2ᚖstring(ctx context.Context, sel ast.SelectionSet, v *string) graphql.Marshaler {
 13564  	if v == nil {
 13565  		return graphql.Null
 13566  	}
 13567  	return ec.marshalOString2string(ctx, sel, *v)
 13568  }
 13569  
 13570  func (ec *executionContext) marshalOTestUnion2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐTestUnion(ctx context.Context, sel ast.SelectionSet, v TestUnion) graphql.Marshaler {
 13571  	if v == nil {
 13572  		return graphql.Null
 13573  	}
 13574  	return ec._TestUnion(ctx, sel, v)
 13575  }
 13576  
 13577  func (ec *executionContext) unmarshalOThirdParty2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx context.Context, v interface{}) (ThirdParty, error) {
 13578  	return UnmarshalThirdParty(v)
 13579  }
 13580  
 13581  func (ec *executionContext) marshalOThirdParty2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx context.Context, sel ast.SelectionSet, v ThirdParty) graphql.Marshaler {
 13582  	return MarshalThirdParty(v)
 13583  }
 13584  
 13585  func (ec *executionContext) unmarshalOThirdParty2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx context.Context, v interface{}) (*ThirdParty, error) {
 13586  	if v == nil {
 13587  		return nil, nil
 13588  	}
 13589  	res, err := ec.unmarshalOThirdParty2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx, v)
 13590  	return &res, err
 13591  }
 13592  
 13593  func (ec *executionContext) marshalOThirdParty2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx context.Context, sel ast.SelectionSet, v *ThirdParty) graphql.Marshaler {
 13594  	if v == nil {
 13595  		return graphql.Null
 13596  	}
 13597  	return ec.marshalOThirdParty2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐThirdParty(ctx, sel, *v)
 13598  }
 13599  
 13600  func (ec *executionContext) unmarshalOTime2timeᚐTime(ctx context.Context, v interface{}) (time.Time, error) {
 13601  	return graphql.UnmarshalTime(v)
 13602  }
 13603  
 13604  func (ec *executionContext) marshalOTime2timeᚐTime(ctx context.Context, sel ast.SelectionSet, v time.Time) graphql.Marshaler {
 13605  	return graphql.MarshalTime(v)
 13606  }
 13607  
 13608  func (ec *executionContext) unmarshalOTime2ᚖtimeᚐTime(ctx context.Context, v interface{}) (*time.Time, error) {
 13609  	if v == nil {
 13610  		return nil, nil
 13611  	}
 13612  	res, err := ec.unmarshalOTime2timeᚐTime(ctx, v)
 13613  	return &res, err
 13614  }
 13615  
 13616  func (ec *executionContext) marshalOTime2ᚖtimeᚐTime(ctx context.Context, sel ast.SelectionSet, v *time.Time) graphql.Marshaler {
 13617  	if v == nil {
 13618  		return graphql.Null
 13619  	}
 13620  	return ec.marshalOTime2timeᚐTime(ctx, sel, *v)
 13621  }
 13622  
 13623  func (ec *executionContext) unmarshalOValidInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidInput(ctx context.Context, v interface{}) (ValidInput, error) {
 13624  	return ec.unmarshalInputValidInput(ctx, v)
 13625  }
 13626  
 13627  func (ec *executionContext) unmarshalOValidInput2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidInput(ctx context.Context, v interface{}) (*ValidInput, error) {
 13628  	if v == nil {
 13629  		return nil, nil
 13630  	}
 13631  	res, err := ec.unmarshalOValidInput2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidInput(ctx, v)
 13632  	return &res, err
 13633  }
 13634  
 13635  func (ec *executionContext) marshalOValidType2githubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidType(ctx context.Context, sel ast.SelectionSet, v ValidType) graphql.Marshaler {
 13636  	return ec._ValidType(ctx, sel, &v)
 13637  }
 13638  
 13639  func (ec *executionContext) marshalOValidType2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋcodegenᚋtestserverᚐValidType(ctx context.Context, sel ast.SelectionSet, v *ValidType) graphql.Marshaler {
 13640  	if v == nil {
 13641  		return graphql.Null
 13642  	}
 13643  	return ec._ValidType(ctx, sel, v)
 13644  }
 13645  
 13646  func (ec *executionContext) marshalO__EnumValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐEnumValueᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.EnumValue) graphql.Marshaler {
 13647  	if v == nil {
 13648  		return graphql.Null
 13649  	}
 13650  	ret := make(graphql.Array, len(v))
 13651  	var wg sync.WaitGroup
 13652  	isLen1 := len(v) == 1
 13653  	if !isLen1 {
 13654  		wg.Add(len(v))
 13655  	}
 13656  	for i := range v {
 13657  		i := i
 13658  		fc := &graphql.FieldContext{
 13659  			Index:  &i,
 13660  			Result: &v[i],
 13661  		}
 13662  		ctx := graphql.WithFieldContext(ctx, fc)
 13663  		f := func(i int) {
 13664  			defer func() {
 13665  				if r := recover(); r != nil {
 13666  					ec.Error(ctx, ec.Recover(ctx, r))
 13667  					ret = nil
 13668  				}
 13669  			}()
 13670  			if !isLen1 {
 13671  				defer wg.Done()
 13672  			}
 13673  			ret[i] = ec.marshalN__EnumValue2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐEnumValue(ctx, sel, v[i])
 13674  		}
 13675  		if isLen1 {
 13676  			f(i)
 13677  		} else {
 13678  			go f(i)
 13679  		}
 13680  
 13681  	}
 13682  	wg.Wait()
 13683  	return ret
 13684  }
 13685  
 13686  func (ec *executionContext) marshalO__Field2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐFieldᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.Field) graphql.Marshaler {
 13687  	if v == nil {
 13688  		return graphql.Null
 13689  	}
 13690  	ret := make(graphql.Array, len(v))
 13691  	var wg sync.WaitGroup
 13692  	isLen1 := len(v) == 1
 13693  	if !isLen1 {
 13694  		wg.Add(len(v))
 13695  	}
 13696  	for i := range v {
 13697  		i := i
 13698  		fc := &graphql.FieldContext{
 13699  			Index:  &i,
 13700  			Result: &v[i],
 13701  		}
 13702  		ctx := graphql.WithFieldContext(ctx, fc)
 13703  		f := func(i int) {
 13704  			defer func() {
 13705  				if r := recover(); r != nil {
 13706  					ec.Error(ctx, ec.Recover(ctx, r))
 13707  					ret = nil
 13708  				}
 13709  			}()
 13710  			if !isLen1 {
 13711  				defer wg.Done()
 13712  			}
 13713  			ret[i] = ec.marshalN__Field2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐField(ctx, sel, v[i])
 13714  		}
 13715  		if isLen1 {
 13716  			f(i)
 13717  		} else {
 13718  			go f(i)
 13719  		}
 13720  
 13721  	}
 13722  	wg.Wait()
 13723  	return ret
 13724  }
 13725  
 13726  func (ec *executionContext) marshalO__InputValue2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValueᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.InputValue) graphql.Marshaler {
 13727  	if v == nil {
 13728  		return graphql.Null
 13729  	}
 13730  	ret := make(graphql.Array, len(v))
 13731  	var wg sync.WaitGroup
 13732  	isLen1 := len(v) == 1
 13733  	if !isLen1 {
 13734  		wg.Add(len(v))
 13735  	}
 13736  	for i := range v {
 13737  		i := i
 13738  		fc := &graphql.FieldContext{
 13739  			Index:  &i,
 13740  			Result: &v[i],
 13741  		}
 13742  		ctx := graphql.WithFieldContext(ctx, fc)
 13743  		f := func(i int) {
 13744  			defer func() {
 13745  				if r := recover(); r != nil {
 13746  					ec.Error(ctx, ec.Recover(ctx, r))
 13747  					ret = nil
 13748  				}
 13749  			}()
 13750  			if !isLen1 {
 13751  				defer wg.Done()
 13752  			}
 13753  			ret[i] = ec.marshalN__InputValue2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐInputValue(ctx, sel, v[i])
 13754  		}
 13755  		if isLen1 {
 13756  			f(i)
 13757  		} else {
 13758  			go f(i)
 13759  		}
 13760  
 13761  	}
 13762  	wg.Wait()
 13763  	return ret
 13764  }
 13765  
 13766  func (ec *executionContext) marshalO__Schema2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐSchema(ctx context.Context, sel ast.SelectionSet, v introspection.Schema) graphql.Marshaler {
 13767  	return ec.___Schema(ctx, sel, &v)
 13768  }
 13769  
 13770  func (ec *executionContext) marshalO__Schema2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐSchema(ctx context.Context, sel ast.SelectionSet, v *introspection.Schema) graphql.Marshaler {
 13771  	if v == nil {
 13772  		return graphql.Null
 13773  	}
 13774  	return ec.___Schema(ctx, sel, v)
 13775  }
 13776  
 13777  func (ec *executionContext) marshalO__Type2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx context.Context, sel ast.SelectionSet, v introspection.Type) graphql.Marshaler {
 13778  	return ec.___Type(ctx, sel, &v)
 13779  }
 13780  
 13781  func (ec *executionContext) marshalO__Type2ᚕgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐTypeᚄ(ctx context.Context, sel ast.SelectionSet, v []introspection.Type) graphql.Marshaler {
 13782  	if v == nil {
 13783  		return graphql.Null
 13784  	}
 13785  	ret := make(graphql.Array, len(v))
 13786  	var wg sync.WaitGroup
 13787  	isLen1 := len(v) == 1
 13788  	if !isLen1 {
 13789  		wg.Add(len(v))
 13790  	}
 13791  	for i := range v {
 13792  		i := i
 13793  		fc := &graphql.FieldContext{
 13794  			Index:  &i,
 13795  			Result: &v[i],
 13796  		}
 13797  		ctx := graphql.WithFieldContext(ctx, fc)
 13798  		f := func(i int) {
 13799  			defer func() {
 13800  				if r := recover(); r != nil {
 13801  					ec.Error(ctx, ec.Recover(ctx, r))
 13802  					ret = nil
 13803  				}
 13804  			}()
 13805  			if !isLen1 {
 13806  				defer wg.Done()
 13807  			}
 13808  			ret[i] = ec.marshalN__Type2githubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx, sel, v[i])
 13809  		}
 13810  		if isLen1 {
 13811  			f(i)
 13812  		} else {
 13813  			go f(i)
 13814  		}
 13815  
 13816  	}
 13817  	wg.Wait()
 13818  	return ret
 13819  }
 13820  
 13821  func (ec *executionContext) marshalO__Type2ᚖgithubᚗcomᚋ99designsᚋgqlgenᚋgraphqlᚋintrospectionᚐType(ctx context.Context, sel ast.SelectionSet, v *introspection.Type) graphql.Marshaler {
 13822  	if v == nil {
 13823  		return graphql.Null
 13824  	}
 13825  	return ec.___Type(ctx, sel, v)
 13826  }
 13827  
 13828  // endregion ***************************** type.gotpl *****************************