1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package rekognition
4
5import (
6	"bytes"
7	"context"
8	"fmt"
9	"github.com/aws/aws-sdk-go-v2/service/rekognition/types"
10	smithy "github.com/aws/smithy-go"
11	"github.com/aws/smithy-go/encoding/httpbinding"
12	smithyjson "github.com/aws/smithy-go/encoding/json"
13	"github.com/aws/smithy-go/middleware"
14	smithyhttp "github.com/aws/smithy-go/transport/http"
15)
16
17type awsAwsjson11_serializeOpCompareFaces struct {
18}
19
20func (*awsAwsjson11_serializeOpCompareFaces) ID() string {
21	return "OperationSerializer"
22}
23
24func (m *awsAwsjson11_serializeOpCompareFaces) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
25	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
26) {
27	request, ok := in.Request.(*smithyhttp.Request)
28	if !ok {
29		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
30	}
31
32	input, ok := in.Parameters.(*CompareFacesInput)
33	_ = input
34	if !ok {
35		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
36	}
37
38	request.Request.URL.Path = "/"
39	request.Request.Method = "POST"
40	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
41	if err != nil {
42		return out, metadata, &smithy.SerializationError{Err: err}
43	}
44	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
45	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.CompareFaces")
46
47	jsonEncoder := smithyjson.NewEncoder()
48	if err := awsAwsjson11_serializeOpDocumentCompareFacesInput(input, jsonEncoder.Value); err != nil {
49		return out, metadata, &smithy.SerializationError{Err: err}
50	}
51
52	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
53		return out, metadata, &smithy.SerializationError{Err: err}
54	}
55
56	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
57		return out, metadata, &smithy.SerializationError{Err: err}
58	}
59	in.Request = request
60
61	return next.HandleSerialize(ctx, in)
62}
63
64type awsAwsjson11_serializeOpCreateCollection struct {
65}
66
67func (*awsAwsjson11_serializeOpCreateCollection) ID() string {
68	return "OperationSerializer"
69}
70
71func (m *awsAwsjson11_serializeOpCreateCollection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
72	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
73) {
74	request, ok := in.Request.(*smithyhttp.Request)
75	if !ok {
76		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
77	}
78
79	input, ok := in.Parameters.(*CreateCollectionInput)
80	_ = input
81	if !ok {
82		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
83	}
84
85	request.Request.URL.Path = "/"
86	request.Request.Method = "POST"
87	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
88	if err != nil {
89		return out, metadata, &smithy.SerializationError{Err: err}
90	}
91	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
92	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.CreateCollection")
93
94	jsonEncoder := smithyjson.NewEncoder()
95	if err := awsAwsjson11_serializeOpDocumentCreateCollectionInput(input, jsonEncoder.Value); err != nil {
96		return out, metadata, &smithy.SerializationError{Err: err}
97	}
98
99	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
100		return out, metadata, &smithy.SerializationError{Err: err}
101	}
102
103	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
104		return out, metadata, &smithy.SerializationError{Err: err}
105	}
106	in.Request = request
107
108	return next.HandleSerialize(ctx, in)
109}
110
111type awsAwsjson11_serializeOpCreateProject struct {
112}
113
114func (*awsAwsjson11_serializeOpCreateProject) ID() string {
115	return "OperationSerializer"
116}
117
118func (m *awsAwsjson11_serializeOpCreateProject) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
119	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
120) {
121	request, ok := in.Request.(*smithyhttp.Request)
122	if !ok {
123		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
124	}
125
126	input, ok := in.Parameters.(*CreateProjectInput)
127	_ = input
128	if !ok {
129		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
130	}
131
132	request.Request.URL.Path = "/"
133	request.Request.Method = "POST"
134	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
135	if err != nil {
136		return out, metadata, &smithy.SerializationError{Err: err}
137	}
138	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
139	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.CreateProject")
140
141	jsonEncoder := smithyjson.NewEncoder()
142	if err := awsAwsjson11_serializeOpDocumentCreateProjectInput(input, jsonEncoder.Value); err != nil {
143		return out, metadata, &smithy.SerializationError{Err: err}
144	}
145
146	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
147		return out, metadata, &smithy.SerializationError{Err: err}
148	}
149
150	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
151		return out, metadata, &smithy.SerializationError{Err: err}
152	}
153	in.Request = request
154
155	return next.HandleSerialize(ctx, in)
156}
157
158type awsAwsjson11_serializeOpCreateProjectVersion struct {
159}
160
161func (*awsAwsjson11_serializeOpCreateProjectVersion) ID() string {
162	return "OperationSerializer"
163}
164
165func (m *awsAwsjson11_serializeOpCreateProjectVersion) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
166	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
167) {
168	request, ok := in.Request.(*smithyhttp.Request)
169	if !ok {
170		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
171	}
172
173	input, ok := in.Parameters.(*CreateProjectVersionInput)
174	_ = input
175	if !ok {
176		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
177	}
178
179	request.Request.URL.Path = "/"
180	request.Request.Method = "POST"
181	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
182	if err != nil {
183		return out, metadata, &smithy.SerializationError{Err: err}
184	}
185	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
186	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.CreateProjectVersion")
187
188	jsonEncoder := smithyjson.NewEncoder()
189	if err := awsAwsjson11_serializeOpDocumentCreateProjectVersionInput(input, jsonEncoder.Value); err != nil {
190		return out, metadata, &smithy.SerializationError{Err: err}
191	}
192
193	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
194		return out, metadata, &smithy.SerializationError{Err: err}
195	}
196
197	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
198		return out, metadata, &smithy.SerializationError{Err: err}
199	}
200	in.Request = request
201
202	return next.HandleSerialize(ctx, in)
203}
204
205type awsAwsjson11_serializeOpCreateStreamProcessor struct {
206}
207
208func (*awsAwsjson11_serializeOpCreateStreamProcessor) ID() string {
209	return "OperationSerializer"
210}
211
212func (m *awsAwsjson11_serializeOpCreateStreamProcessor) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
213	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
214) {
215	request, ok := in.Request.(*smithyhttp.Request)
216	if !ok {
217		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
218	}
219
220	input, ok := in.Parameters.(*CreateStreamProcessorInput)
221	_ = input
222	if !ok {
223		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
224	}
225
226	request.Request.URL.Path = "/"
227	request.Request.Method = "POST"
228	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
229	if err != nil {
230		return out, metadata, &smithy.SerializationError{Err: err}
231	}
232	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
233	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.CreateStreamProcessor")
234
235	jsonEncoder := smithyjson.NewEncoder()
236	if err := awsAwsjson11_serializeOpDocumentCreateStreamProcessorInput(input, jsonEncoder.Value); err != nil {
237		return out, metadata, &smithy.SerializationError{Err: err}
238	}
239
240	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
241		return out, metadata, &smithy.SerializationError{Err: err}
242	}
243
244	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
245		return out, metadata, &smithy.SerializationError{Err: err}
246	}
247	in.Request = request
248
249	return next.HandleSerialize(ctx, in)
250}
251
252type awsAwsjson11_serializeOpDeleteCollection struct {
253}
254
255func (*awsAwsjson11_serializeOpDeleteCollection) ID() string {
256	return "OperationSerializer"
257}
258
259func (m *awsAwsjson11_serializeOpDeleteCollection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
260	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
261) {
262	request, ok := in.Request.(*smithyhttp.Request)
263	if !ok {
264		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
265	}
266
267	input, ok := in.Parameters.(*DeleteCollectionInput)
268	_ = input
269	if !ok {
270		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
271	}
272
273	request.Request.URL.Path = "/"
274	request.Request.Method = "POST"
275	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
276	if err != nil {
277		return out, metadata, &smithy.SerializationError{Err: err}
278	}
279	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
280	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DeleteCollection")
281
282	jsonEncoder := smithyjson.NewEncoder()
283	if err := awsAwsjson11_serializeOpDocumentDeleteCollectionInput(input, jsonEncoder.Value); err != nil {
284		return out, metadata, &smithy.SerializationError{Err: err}
285	}
286
287	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
288		return out, metadata, &smithy.SerializationError{Err: err}
289	}
290
291	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
292		return out, metadata, &smithy.SerializationError{Err: err}
293	}
294	in.Request = request
295
296	return next.HandleSerialize(ctx, in)
297}
298
299type awsAwsjson11_serializeOpDeleteFaces struct {
300}
301
302func (*awsAwsjson11_serializeOpDeleteFaces) ID() string {
303	return "OperationSerializer"
304}
305
306func (m *awsAwsjson11_serializeOpDeleteFaces) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
307	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
308) {
309	request, ok := in.Request.(*smithyhttp.Request)
310	if !ok {
311		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
312	}
313
314	input, ok := in.Parameters.(*DeleteFacesInput)
315	_ = input
316	if !ok {
317		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
318	}
319
320	request.Request.URL.Path = "/"
321	request.Request.Method = "POST"
322	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
323	if err != nil {
324		return out, metadata, &smithy.SerializationError{Err: err}
325	}
326	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
327	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DeleteFaces")
328
329	jsonEncoder := smithyjson.NewEncoder()
330	if err := awsAwsjson11_serializeOpDocumentDeleteFacesInput(input, jsonEncoder.Value); err != nil {
331		return out, metadata, &smithy.SerializationError{Err: err}
332	}
333
334	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
335		return out, metadata, &smithy.SerializationError{Err: err}
336	}
337
338	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
339		return out, metadata, &smithy.SerializationError{Err: err}
340	}
341	in.Request = request
342
343	return next.HandleSerialize(ctx, in)
344}
345
346type awsAwsjson11_serializeOpDeleteProject struct {
347}
348
349func (*awsAwsjson11_serializeOpDeleteProject) ID() string {
350	return "OperationSerializer"
351}
352
353func (m *awsAwsjson11_serializeOpDeleteProject) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
354	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
355) {
356	request, ok := in.Request.(*smithyhttp.Request)
357	if !ok {
358		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
359	}
360
361	input, ok := in.Parameters.(*DeleteProjectInput)
362	_ = input
363	if !ok {
364		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
365	}
366
367	request.Request.URL.Path = "/"
368	request.Request.Method = "POST"
369	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
370	if err != nil {
371		return out, metadata, &smithy.SerializationError{Err: err}
372	}
373	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
374	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DeleteProject")
375
376	jsonEncoder := smithyjson.NewEncoder()
377	if err := awsAwsjson11_serializeOpDocumentDeleteProjectInput(input, jsonEncoder.Value); err != nil {
378		return out, metadata, &smithy.SerializationError{Err: err}
379	}
380
381	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
382		return out, metadata, &smithy.SerializationError{Err: err}
383	}
384
385	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
386		return out, metadata, &smithy.SerializationError{Err: err}
387	}
388	in.Request = request
389
390	return next.HandleSerialize(ctx, in)
391}
392
393type awsAwsjson11_serializeOpDeleteProjectVersion struct {
394}
395
396func (*awsAwsjson11_serializeOpDeleteProjectVersion) ID() string {
397	return "OperationSerializer"
398}
399
400func (m *awsAwsjson11_serializeOpDeleteProjectVersion) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
401	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
402) {
403	request, ok := in.Request.(*smithyhttp.Request)
404	if !ok {
405		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
406	}
407
408	input, ok := in.Parameters.(*DeleteProjectVersionInput)
409	_ = input
410	if !ok {
411		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
412	}
413
414	request.Request.URL.Path = "/"
415	request.Request.Method = "POST"
416	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
417	if err != nil {
418		return out, metadata, &smithy.SerializationError{Err: err}
419	}
420	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
421	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DeleteProjectVersion")
422
423	jsonEncoder := smithyjson.NewEncoder()
424	if err := awsAwsjson11_serializeOpDocumentDeleteProjectVersionInput(input, jsonEncoder.Value); err != nil {
425		return out, metadata, &smithy.SerializationError{Err: err}
426	}
427
428	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
429		return out, metadata, &smithy.SerializationError{Err: err}
430	}
431
432	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
433		return out, metadata, &smithy.SerializationError{Err: err}
434	}
435	in.Request = request
436
437	return next.HandleSerialize(ctx, in)
438}
439
440type awsAwsjson11_serializeOpDeleteStreamProcessor struct {
441}
442
443func (*awsAwsjson11_serializeOpDeleteStreamProcessor) ID() string {
444	return "OperationSerializer"
445}
446
447func (m *awsAwsjson11_serializeOpDeleteStreamProcessor) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
448	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
449) {
450	request, ok := in.Request.(*smithyhttp.Request)
451	if !ok {
452		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
453	}
454
455	input, ok := in.Parameters.(*DeleteStreamProcessorInput)
456	_ = input
457	if !ok {
458		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
459	}
460
461	request.Request.URL.Path = "/"
462	request.Request.Method = "POST"
463	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
464	if err != nil {
465		return out, metadata, &smithy.SerializationError{Err: err}
466	}
467	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
468	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DeleteStreamProcessor")
469
470	jsonEncoder := smithyjson.NewEncoder()
471	if err := awsAwsjson11_serializeOpDocumentDeleteStreamProcessorInput(input, jsonEncoder.Value); err != nil {
472		return out, metadata, &smithy.SerializationError{Err: err}
473	}
474
475	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
476		return out, metadata, &smithy.SerializationError{Err: err}
477	}
478
479	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
480		return out, metadata, &smithy.SerializationError{Err: err}
481	}
482	in.Request = request
483
484	return next.HandleSerialize(ctx, in)
485}
486
487type awsAwsjson11_serializeOpDescribeCollection struct {
488}
489
490func (*awsAwsjson11_serializeOpDescribeCollection) ID() string {
491	return "OperationSerializer"
492}
493
494func (m *awsAwsjson11_serializeOpDescribeCollection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
495	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
496) {
497	request, ok := in.Request.(*smithyhttp.Request)
498	if !ok {
499		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
500	}
501
502	input, ok := in.Parameters.(*DescribeCollectionInput)
503	_ = input
504	if !ok {
505		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
506	}
507
508	request.Request.URL.Path = "/"
509	request.Request.Method = "POST"
510	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
511	if err != nil {
512		return out, metadata, &smithy.SerializationError{Err: err}
513	}
514	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
515	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DescribeCollection")
516
517	jsonEncoder := smithyjson.NewEncoder()
518	if err := awsAwsjson11_serializeOpDocumentDescribeCollectionInput(input, jsonEncoder.Value); err != nil {
519		return out, metadata, &smithy.SerializationError{Err: err}
520	}
521
522	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
523		return out, metadata, &smithy.SerializationError{Err: err}
524	}
525
526	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
527		return out, metadata, &smithy.SerializationError{Err: err}
528	}
529	in.Request = request
530
531	return next.HandleSerialize(ctx, in)
532}
533
534type awsAwsjson11_serializeOpDescribeProjects struct {
535}
536
537func (*awsAwsjson11_serializeOpDescribeProjects) ID() string {
538	return "OperationSerializer"
539}
540
541func (m *awsAwsjson11_serializeOpDescribeProjects) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
542	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
543) {
544	request, ok := in.Request.(*smithyhttp.Request)
545	if !ok {
546		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
547	}
548
549	input, ok := in.Parameters.(*DescribeProjectsInput)
550	_ = input
551	if !ok {
552		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
553	}
554
555	request.Request.URL.Path = "/"
556	request.Request.Method = "POST"
557	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
558	if err != nil {
559		return out, metadata, &smithy.SerializationError{Err: err}
560	}
561	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
562	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DescribeProjects")
563
564	jsonEncoder := smithyjson.NewEncoder()
565	if err := awsAwsjson11_serializeOpDocumentDescribeProjectsInput(input, jsonEncoder.Value); err != nil {
566		return out, metadata, &smithy.SerializationError{Err: err}
567	}
568
569	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
570		return out, metadata, &smithy.SerializationError{Err: err}
571	}
572
573	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
574		return out, metadata, &smithy.SerializationError{Err: err}
575	}
576	in.Request = request
577
578	return next.HandleSerialize(ctx, in)
579}
580
581type awsAwsjson11_serializeOpDescribeProjectVersions struct {
582}
583
584func (*awsAwsjson11_serializeOpDescribeProjectVersions) ID() string {
585	return "OperationSerializer"
586}
587
588func (m *awsAwsjson11_serializeOpDescribeProjectVersions) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
589	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
590) {
591	request, ok := in.Request.(*smithyhttp.Request)
592	if !ok {
593		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
594	}
595
596	input, ok := in.Parameters.(*DescribeProjectVersionsInput)
597	_ = input
598	if !ok {
599		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
600	}
601
602	request.Request.URL.Path = "/"
603	request.Request.Method = "POST"
604	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
605	if err != nil {
606		return out, metadata, &smithy.SerializationError{Err: err}
607	}
608	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
609	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DescribeProjectVersions")
610
611	jsonEncoder := smithyjson.NewEncoder()
612	if err := awsAwsjson11_serializeOpDocumentDescribeProjectVersionsInput(input, jsonEncoder.Value); err != nil {
613		return out, metadata, &smithy.SerializationError{Err: err}
614	}
615
616	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
617		return out, metadata, &smithy.SerializationError{Err: err}
618	}
619
620	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
621		return out, metadata, &smithy.SerializationError{Err: err}
622	}
623	in.Request = request
624
625	return next.HandleSerialize(ctx, in)
626}
627
628type awsAwsjson11_serializeOpDescribeStreamProcessor struct {
629}
630
631func (*awsAwsjson11_serializeOpDescribeStreamProcessor) ID() string {
632	return "OperationSerializer"
633}
634
635func (m *awsAwsjson11_serializeOpDescribeStreamProcessor) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
636	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
637) {
638	request, ok := in.Request.(*smithyhttp.Request)
639	if !ok {
640		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
641	}
642
643	input, ok := in.Parameters.(*DescribeStreamProcessorInput)
644	_ = input
645	if !ok {
646		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
647	}
648
649	request.Request.URL.Path = "/"
650	request.Request.Method = "POST"
651	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
652	if err != nil {
653		return out, metadata, &smithy.SerializationError{Err: err}
654	}
655	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
656	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DescribeStreamProcessor")
657
658	jsonEncoder := smithyjson.NewEncoder()
659	if err := awsAwsjson11_serializeOpDocumentDescribeStreamProcessorInput(input, jsonEncoder.Value); err != nil {
660		return out, metadata, &smithy.SerializationError{Err: err}
661	}
662
663	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
664		return out, metadata, &smithy.SerializationError{Err: err}
665	}
666
667	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
668		return out, metadata, &smithy.SerializationError{Err: err}
669	}
670	in.Request = request
671
672	return next.HandleSerialize(ctx, in)
673}
674
675type awsAwsjson11_serializeOpDetectCustomLabels struct {
676}
677
678func (*awsAwsjson11_serializeOpDetectCustomLabels) ID() string {
679	return "OperationSerializer"
680}
681
682func (m *awsAwsjson11_serializeOpDetectCustomLabels) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
683	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
684) {
685	request, ok := in.Request.(*smithyhttp.Request)
686	if !ok {
687		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
688	}
689
690	input, ok := in.Parameters.(*DetectCustomLabelsInput)
691	_ = input
692	if !ok {
693		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
694	}
695
696	request.Request.URL.Path = "/"
697	request.Request.Method = "POST"
698	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
699	if err != nil {
700		return out, metadata, &smithy.SerializationError{Err: err}
701	}
702	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
703	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DetectCustomLabels")
704
705	jsonEncoder := smithyjson.NewEncoder()
706	if err := awsAwsjson11_serializeOpDocumentDetectCustomLabelsInput(input, jsonEncoder.Value); err != nil {
707		return out, metadata, &smithy.SerializationError{Err: err}
708	}
709
710	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
711		return out, metadata, &smithy.SerializationError{Err: err}
712	}
713
714	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
715		return out, metadata, &smithy.SerializationError{Err: err}
716	}
717	in.Request = request
718
719	return next.HandleSerialize(ctx, in)
720}
721
722type awsAwsjson11_serializeOpDetectFaces struct {
723}
724
725func (*awsAwsjson11_serializeOpDetectFaces) ID() string {
726	return "OperationSerializer"
727}
728
729func (m *awsAwsjson11_serializeOpDetectFaces) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
730	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
731) {
732	request, ok := in.Request.(*smithyhttp.Request)
733	if !ok {
734		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
735	}
736
737	input, ok := in.Parameters.(*DetectFacesInput)
738	_ = input
739	if !ok {
740		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
741	}
742
743	request.Request.URL.Path = "/"
744	request.Request.Method = "POST"
745	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
746	if err != nil {
747		return out, metadata, &smithy.SerializationError{Err: err}
748	}
749	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
750	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DetectFaces")
751
752	jsonEncoder := smithyjson.NewEncoder()
753	if err := awsAwsjson11_serializeOpDocumentDetectFacesInput(input, jsonEncoder.Value); err != nil {
754		return out, metadata, &smithy.SerializationError{Err: err}
755	}
756
757	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
758		return out, metadata, &smithy.SerializationError{Err: err}
759	}
760
761	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
762		return out, metadata, &smithy.SerializationError{Err: err}
763	}
764	in.Request = request
765
766	return next.HandleSerialize(ctx, in)
767}
768
769type awsAwsjson11_serializeOpDetectLabels struct {
770}
771
772func (*awsAwsjson11_serializeOpDetectLabels) ID() string {
773	return "OperationSerializer"
774}
775
776func (m *awsAwsjson11_serializeOpDetectLabels) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
777	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
778) {
779	request, ok := in.Request.(*smithyhttp.Request)
780	if !ok {
781		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
782	}
783
784	input, ok := in.Parameters.(*DetectLabelsInput)
785	_ = input
786	if !ok {
787		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
788	}
789
790	request.Request.URL.Path = "/"
791	request.Request.Method = "POST"
792	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
793	if err != nil {
794		return out, metadata, &smithy.SerializationError{Err: err}
795	}
796	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
797	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DetectLabels")
798
799	jsonEncoder := smithyjson.NewEncoder()
800	if err := awsAwsjson11_serializeOpDocumentDetectLabelsInput(input, jsonEncoder.Value); err != nil {
801		return out, metadata, &smithy.SerializationError{Err: err}
802	}
803
804	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
805		return out, metadata, &smithy.SerializationError{Err: err}
806	}
807
808	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
809		return out, metadata, &smithy.SerializationError{Err: err}
810	}
811	in.Request = request
812
813	return next.HandleSerialize(ctx, in)
814}
815
816type awsAwsjson11_serializeOpDetectModerationLabels struct {
817}
818
819func (*awsAwsjson11_serializeOpDetectModerationLabels) ID() string {
820	return "OperationSerializer"
821}
822
823func (m *awsAwsjson11_serializeOpDetectModerationLabels) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
824	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
825) {
826	request, ok := in.Request.(*smithyhttp.Request)
827	if !ok {
828		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
829	}
830
831	input, ok := in.Parameters.(*DetectModerationLabelsInput)
832	_ = input
833	if !ok {
834		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
835	}
836
837	request.Request.URL.Path = "/"
838	request.Request.Method = "POST"
839	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
840	if err != nil {
841		return out, metadata, &smithy.SerializationError{Err: err}
842	}
843	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
844	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DetectModerationLabels")
845
846	jsonEncoder := smithyjson.NewEncoder()
847	if err := awsAwsjson11_serializeOpDocumentDetectModerationLabelsInput(input, jsonEncoder.Value); err != nil {
848		return out, metadata, &smithy.SerializationError{Err: err}
849	}
850
851	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
852		return out, metadata, &smithy.SerializationError{Err: err}
853	}
854
855	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
856		return out, metadata, &smithy.SerializationError{Err: err}
857	}
858	in.Request = request
859
860	return next.HandleSerialize(ctx, in)
861}
862
863type awsAwsjson11_serializeOpDetectProtectiveEquipment struct {
864}
865
866func (*awsAwsjson11_serializeOpDetectProtectiveEquipment) ID() string {
867	return "OperationSerializer"
868}
869
870func (m *awsAwsjson11_serializeOpDetectProtectiveEquipment) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
871	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
872) {
873	request, ok := in.Request.(*smithyhttp.Request)
874	if !ok {
875		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
876	}
877
878	input, ok := in.Parameters.(*DetectProtectiveEquipmentInput)
879	_ = input
880	if !ok {
881		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
882	}
883
884	request.Request.URL.Path = "/"
885	request.Request.Method = "POST"
886	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
887	if err != nil {
888		return out, metadata, &smithy.SerializationError{Err: err}
889	}
890	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
891	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DetectProtectiveEquipment")
892
893	jsonEncoder := smithyjson.NewEncoder()
894	if err := awsAwsjson11_serializeOpDocumentDetectProtectiveEquipmentInput(input, jsonEncoder.Value); err != nil {
895		return out, metadata, &smithy.SerializationError{Err: err}
896	}
897
898	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
899		return out, metadata, &smithy.SerializationError{Err: err}
900	}
901
902	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
903		return out, metadata, &smithy.SerializationError{Err: err}
904	}
905	in.Request = request
906
907	return next.HandleSerialize(ctx, in)
908}
909
910type awsAwsjson11_serializeOpDetectText struct {
911}
912
913func (*awsAwsjson11_serializeOpDetectText) ID() string {
914	return "OperationSerializer"
915}
916
917func (m *awsAwsjson11_serializeOpDetectText) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
918	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
919) {
920	request, ok := in.Request.(*smithyhttp.Request)
921	if !ok {
922		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
923	}
924
925	input, ok := in.Parameters.(*DetectTextInput)
926	_ = input
927	if !ok {
928		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
929	}
930
931	request.Request.URL.Path = "/"
932	request.Request.Method = "POST"
933	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
934	if err != nil {
935		return out, metadata, &smithy.SerializationError{Err: err}
936	}
937	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
938	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.DetectText")
939
940	jsonEncoder := smithyjson.NewEncoder()
941	if err := awsAwsjson11_serializeOpDocumentDetectTextInput(input, jsonEncoder.Value); err != nil {
942		return out, metadata, &smithy.SerializationError{Err: err}
943	}
944
945	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
946		return out, metadata, &smithy.SerializationError{Err: err}
947	}
948
949	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
950		return out, metadata, &smithy.SerializationError{Err: err}
951	}
952	in.Request = request
953
954	return next.HandleSerialize(ctx, in)
955}
956
957type awsAwsjson11_serializeOpGetCelebrityInfo struct {
958}
959
960func (*awsAwsjson11_serializeOpGetCelebrityInfo) ID() string {
961	return "OperationSerializer"
962}
963
964func (m *awsAwsjson11_serializeOpGetCelebrityInfo) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
965	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
966) {
967	request, ok := in.Request.(*smithyhttp.Request)
968	if !ok {
969		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
970	}
971
972	input, ok := in.Parameters.(*GetCelebrityInfoInput)
973	_ = input
974	if !ok {
975		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
976	}
977
978	request.Request.URL.Path = "/"
979	request.Request.Method = "POST"
980	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
981	if err != nil {
982		return out, metadata, &smithy.SerializationError{Err: err}
983	}
984	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
985	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetCelebrityInfo")
986
987	jsonEncoder := smithyjson.NewEncoder()
988	if err := awsAwsjson11_serializeOpDocumentGetCelebrityInfoInput(input, jsonEncoder.Value); err != nil {
989		return out, metadata, &smithy.SerializationError{Err: err}
990	}
991
992	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
993		return out, metadata, &smithy.SerializationError{Err: err}
994	}
995
996	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
997		return out, metadata, &smithy.SerializationError{Err: err}
998	}
999	in.Request = request
1000
1001	return next.HandleSerialize(ctx, in)
1002}
1003
1004type awsAwsjson11_serializeOpGetCelebrityRecognition struct {
1005}
1006
1007func (*awsAwsjson11_serializeOpGetCelebrityRecognition) ID() string {
1008	return "OperationSerializer"
1009}
1010
1011func (m *awsAwsjson11_serializeOpGetCelebrityRecognition) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1012	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1013) {
1014	request, ok := in.Request.(*smithyhttp.Request)
1015	if !ok {
1016		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1017	}
1018
1019	input, ok := in.Parameters.(*GetCelebrityRecognitionInput)
1020	_ = input
1021	if !ok {
1022		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1023	}
1024
1025	request.Request.URL.Path = "/"
1026	request.Request.Method = "POST"
1027	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1028	if err != nil {
1029		return out, metadata, &smithy.SerializationError{Err: err}
1030	}
1031	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1032	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetCelebrityRecognition")
1033
1034	jsonEncoder := smithyjson.NewEncoder()
1035	if err := awsAwsjson11_serializeOpDocumentGetCelebrityRecognitionInput(input, jsonEncoder.Value); err != nil {
1036		return out, metadata, &smithy.SerializationError{Err: err}
1037	}
1038
1039	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1040		return out, metadata, &smithy.SerializationError{Err: err}
1041	}
1042
1043	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1044		return out, metadata, &smithy.SerializationError{Err: err}
1045	}
1046	in.Request = request
1047
1048	return next.HandleSerialize(ctx, in)
1049}
1050
1051type awsAwsjson11_serializeOpGetContentModeration struct {
1052}
1053
1054func (*awsAwsjson11_serializeOpGetContentModeration) ID() string {
1055	return "OperationSerializer"
1056}
1057
1058func (m *awsAwsjson11_serializeOpGetContentModeration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1059	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1060) {
1061	request, ok := in.Request.(*smithyhttp.Request)
1062	if !ok {
1063		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1064	}
1065
1066	input, ok := in.Parameters.(*GetContentModerationInput)
1067	_ = input
1068	if !ok {
1069		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1070	}
1071
1072	request.Request.URL.Path = "/"
1073	request.Request.Method = "POST"
1074	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1075	if err != nil {
1076		return out, metadata, &smithy.SerializationError{Err: err}
1077	}
1078	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1079	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetContentModeration")
1080
1081	jsonEncoder := smithyjson.NewEncoder()
1082	if err := awsAwsjson11_serializeOpDocumentGetContentModerationInput(input, jsonEncoder.Value); err != nil {
1083		return out, metadata, &smithy.SerializationError{Err: err}
1084	}
1085
1086	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1087		return out, metadata, &smithy.SerializationError{Err: err}
1088	}
1089
1090	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1091		return out, metadata, &smithy.SerializationError{Err: err}
1092	}
1093	in.Request = request
1094
1095	return next.HandleSerialize(ctx, in)
1096}
1097
1098type awsAwsjson11_serializeOpGetFaceDetection struct {
1099}
1100
1101func (*awsAwsjson11_serializeOpGetFaceDetection) ID() string {
1102	return "OperationSerializer"
1103}
1104
1105func (m *awsAwsjson11_serializeOpGetFaceDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1106	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1107) {
1108	request, ok := in.Request.(*smithyhttp.Request)
1109	if !ok {
1110		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1111	}
1112
1113	input, ok := in.Parameters.(*GetFaceDetectionInput)
1114	_ = input
1115	if !ok {
1116		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1117	}
1118
1119	request.Request.URL.Path = "/"
1120	request.Request.Method = "POST"
1121	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1122	if err != nil {
1123		return out, metadata, &smithy.SerializationError{Err: err}
1124	}
1125	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1126	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetFaceDetection")
1127
1128	jsonEncoder := smithyjson.NewEncoder()
1129	if err := awsAwsjson11_serializeOpDocumentGetFaceDetectionInput(input, jsonEncoder.Value); err != nil {
1130		return out, metadata, &smithy.SerializationError{Err: err}
1131	}
1132
1133	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1134		return out, metadata, &smithy.SerializationError{Err: err}
1135	}
1136
1137	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1138		return out, metadata, &smithy.SerializationError{Err: err}
1139	}
1140	in.Request = request
1141
1142	return next.HandleSerialize(ctx, in)
1143}
1144
1145type awsAwsjson11_serializeOpGetFaceSearch struct {
1146}
1147
1148func (*awsAwsjson11_serializeOpGetFaceSearch) ID() string {
1149	return "OperationSerializer"
1150}
1151
1152func (m *awsAwsjson11_serializeOpGetFaceSearch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1153	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1154) {
1155	request, ok := in.Request.(*smithyhttp.Request)
1156	if !ok {
1157		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1158	}
1159
1160	input, ok := in.Parameters.(*GetFaceSearchInput)
1161	_ = input
1162	if !ok {
1163		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1164	}
1165
1166	request.Request.URL.Path = "/"
1167	request.Request.Method = "POST"
1168	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1169	if err != nil {
1170		return out, metadata, &smithy.SerializationError{Err: err}
1171	}
1172	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1173	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetFaceSearch")
1174
1175	jsonEncoder := smithyjson.NewEncoder()
1176	if err := awsAwsjson11_serializeOpDocumentGetFaceSearchInput(input, jsonEncoder.Value); err != nil {
1177		return out, metadata, &smithy.SerializationError{Err: err}
1178	}
1179
1180	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1181		return out, metadata, &smithy.SerializationError{Err: err}
1182	}
1183
1184	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1185		return out, metadata, &smithy.SerializationError{Err: err}
1186	}
1187	in.Request = request
1188
1189	return next.HandleSerialize(ctx, in)
1190}
1191
1192type awsAwsjson11_serializeOpGetLabelDetection struct {
1193}
1194
1195func (*awsAwsjson11_serializeOpGetLabelDetection) ID() string {
1196	return "OperationSerializer"
1197}
1198
1199func (m *awsAwsjson11_serializeOpGetLabelDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1200	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1201) {
1202	request, ok := in.Request.(*smithyhttp.Request)
1203	if !ok {
1204		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1205	}
1206
1207	input, ok := in.Parameters.(*GetLabelDetectionInput)
1208	_ = input
1209	if !ok {
1210		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1211	}
1212
1213	request.Request.URL.Path = "/"
1214	request.Request.Method = "POST"
1215	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1216	if err != nil {
1217		return out, metadata, &smithy.SerializationError{Err: err}
1218	}
1219	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1220	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetLabelDetection")
1221
1222	jsonEncoder := smithyjson.NewEncoder()
1223	if err := awsAwsjson11_serializeOpDocumentGetLabelDetectionInput(input, jsonEncoder.Value); err != nil {
1224		return out, metadata, &smithy.SerializationError{Err: err}
1225	}
1226
1227	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1228		return out, metadata, &smithy.SerializationError{Err: err}
1229	}
1230
1231	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1232		return out, metadata, &smithy.SerializationError{Err: err}
1233	}
1234	in.Request = request
1235
1236	return next.HandleSerialize(ctx, in)
1237}
1238
1239type awsAwsjson11_serializeOpGetPersonTracking struct {
1240}
1241
1242func (*awsAwsjson11_serializeOpGetPersonTracking) ID() string {
1243	return "OperationSerializer"
1244}
1245
1246func (m *awsAwsjson11_serializeOpGetPersonTracking) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1247	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1248) {
1249	request, ok := in.Request.(*smithyhttp.Request)
1250	if !ok {
1251		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1252	}
1253
1254	input, ok := in.Parameters.(*GetPersonTrackingInput)
1255	_ = input
1256	if !ok {
1257		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1258	}
1259
1260	request.Request.URL.Path = "/"
1261	request.Request.Method = "POST"
1262	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1263	if err != nil {
1264		return out, metadata, &smithy.SerializationError{Err: err}
1265	}
1266	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1267	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetPersonTracking")
1268
1269	jsonEncoder := smithyjson.NewEncoder()
1270	if err := awsAwsjson11_serializeOpDocumentGetPersonTrackingInput(input, jsonEncoder.Value); err != nil {
1271		return out, metadata, &smithy.SerializationError{Err: err}
1272	}
1273
1274	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1275		return out, metadata, &smithy.SerializationError{Err: err}
1276	}
1277
1278	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1279		return out, metadata, &smithy.SerializationError{Err: err}
1280	}
1281	in.Request = request
1282
1283	return next.HandleSerialize(ctx, in)
1284}
1285
1286type awsAwsjson11_serializeOpGetSegmentDetection struct {
1287}
1288
1289func (*awsAwsjson11_serializeOpGetSegmentDetection) ID() string {
1290	return "OperationSerializer"
1291}
1292
1293func (m *awsAwsjson11_serializeOpGetSegmentDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1294	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1295) {
1296	request, ok := in.Request.(*smithyhttp.Request)
1297	if !ok {
1298		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1299	}
1300
1301	input, ok := in.Parameters.(*GetSegmentDetectionInput)
1302	_ = input
1303	if !ok {
1304		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1305	}
1306
1307	request.Request.URL.Path = "/"
1308	request.Request.Method = "POST"
1309	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1310	if err != nil {
1311		return out, metadata, &smithy.SerializationError{Err: err}
1312	}
1313	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1314	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetSegmentDetection")
1315
1316	jsonEncoder := smithyjson.NewEncoder()
1317	if err := awsAwsjson11_serializeOpDocumentGetSegmentDetectionInput(input, jsonEncoder.Value); err != nil {
1318		return out, metadata, &smithy.SerializationError{Err: err}
1319	}
1320
1321	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1322		return out, metadata, &smithy.SerializationError{Err: err}
1323	}
1324
1325	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1326		return out, metadata, &smithy.SerializationError{Err: err}
1327	}
1328	in.Request = request
1329
1330	return next.HandleSerialize(ctx, in)
1331}
1332
1333type awsAwsjson11_serializeOpGetTextDetection struct {
1334}
1335
1336func (*awsAwsjson11_serializeOpGetTextDetection) ID() string {
1337	return "OperationSerializer"
1338}
1339
1340func (m *awsAwsjson11_serializeOpGetTextDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1341	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1342) {
1343	request, ok := in.Request.(*smithyhttp.Request)
1344	if !ok {
1345		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1346	}
1347
1348	input, ok := in.Parameters.(*GetTextDetectionInput)
1349	_ = input
1350	if !ok {
1351		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1352	}
1353
1354	request.Request.URL.Path = "/"
1355	request.Request.Method = "POST"
1356	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1357	if err != nil {
1358		return out, metadata, &smithy.SerializationError{Err: err}
1359	}
1360	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1361	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.GetTextDetection")
1362
1363	jsonEncoder := smithyjson.NewEncoder()
1364	if err := awsAwsjson11_serializeOpDocumentGetTextDetectionInput(input, jsonEncoder.Value); err != nil {
1365		return out, metadata, &smithy.SerializationError{Err: err}
1366	}
1367
1368	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1369		return out, metadata, &smithy.SerializationError{Err: err}
1370	}
1371
1372	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1373		return out, metadata, &smithy.SerializationError{Err: err}
1374	}
1375	in.Request = request
1376
1377	return next.HandleSerialize(ctx, in)
1378}
1379
1380type awsAwsjson11_serializeOpIndexFaces struct {
1381}
1382
1383func (*awsAwsjson11_serializeOpIndexFaces) ID() string {
1384	return "OperationSerializer"
1385}
1386
1387func (m *awsAwsjson11_serializeOpIndexFaces) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1388	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1389) {
1390	request, ok := in.Request.(*smithyhttp.Request)
1391	if !ok {
1392		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1393	}
1394
1395	input, ok := in.Parameters.(*IndexFacesInput)
1396	_ = input
1397	if !ok {
1398		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1399	}
1400
1401	request.Request.URL.Path = "/"
1402	request.Request.Method = "POST"
1403	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1404	if err != nil {
1405		return out, metadata, &smithy.SerializationError{Err: err}
1406	}
1407	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1408	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.IndexFaces")
1409
1410	jsonEncoder := smithyjson.NewEncoder()
1411	if err := awsAwsjson11_serializeOpDocumentIndexFacesInput(input, jsonEncoder.Value); err != nil {
1412		return out, metadata, &smithy.SerializationError{Err: err}
1413	}
1414
1415	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1416		return out, metadata, &smithy.SerializationError{Err: err}
1417	}
1418
1419	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1420		return out, metadata, &smithy.SerializationError{Err: err}
1421	}
1422	in.Request = request
1423
1424	return next.HandleSerialize(ctx, in)
1425}
1426
1427type awsAwsjson11_serializeOpListCollections struct {
1428}
1429
1430func (*awsAwsjson11_serializeOpListCollections) ID() string {
1431	return "OperationSerializer"
1432}
1433
1434func (m *awsAwsjson11_serializeOpListCollections) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1435	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1436) {
1437	request, ok := in.Request.(*smithyhttp.Request)
1438	if !ok {
1439		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1440	}
1441
1442	input, ok := in.Parameters.(*ListCollectionsInput)
1443	_ = input
1444	if !ok {
1445		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1446	}
1447
1448	request.Request.URL.Path = "/"
1449	request.Request.Method = "POST"
1450	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1451	if err != nil {
1452		return out, metadata, &smithy.SerializationError{Err: err}
1453	}
1454	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1455	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.ListCollections")
1456
1457	jsonEncoder := smithyjson.NewEncoder()
1458	if err := awsAwsjson11_serializeOpDocumentListCollectionsInput(input, jsonEncoder.Value); err != nil {
1459		return out, metadata, &smithy.SerializationError{Err: err}
1460	}
1461
1462	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1463		return out, metadata, &smithy.SerializationError{Err: err}
1464	}
1465
1466	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1467		return out, metadata, &smithy.SerializationError{Err: err}
1468	}
1469	in.Request = request
1470
1471	return next.HandleSerialize(ctx, in)
1472}
1473
1474type awsAwsjson11_serializeOpListFaces struct {
1475}
1476
1477func (*awsAwsjson11_serializeOpListFaces) ID() string {
1478	return "OperationSerializer"
1479}
1480
1481func (m *awsAwsjson11_serializeOpListFaces) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1482	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1483) {
1484	request, ok := in.Request.(*smithyhttp.Request)
1485	if !ok {
1486		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1487	}
1488
1489	input, ok := in.Parameters.(*ListFacesInput)
1490	_ = input
1491	if !ok {
1492		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1493	}
1494
1495	request.Request.URL.Path = "/"
1496	request.Request.Method = "POST"
1497	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1498	if err != nil {
1499		return out, metadata, &smithy.SerializationError{Err: err}
1500	}
1501	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1502	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.ListFaces")
1503
1504	jsonEncoder := smithyjson.NewEncoder()
1505	if err := awsAwsjson11_serializeOpDocumentListFacesInput(input, jsonEncoder.Value); err != nil {
1506		return out, metadata, &smithy.SerializationError{Err: err}
1507	}
1508
1509	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1510		return out, metadata, &smithy.SerializationError{Err: err}
1511	}
1512
1513	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1514		return out, metadata, &smithy.SerializationError{Err: err}
1515	}
1516	in.Request = request
1517
1518	return next.HandleSerialize(ctx, in)
1519}
1520
1521type awsAwsjson11_serializeOpListStreamProcessors struct {
1522}
1523
1524func (*awsAwsjson11_serializeOpListStreamProcessors) ID() string {
1525	return "OperationSerializer"
1526}
1527
1528func (m *awsAwsjson11_serializeOpListStreamProcessors) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1529	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1530) {
1531	request, ok := in.Request.(*smithyhttp.Request)
1532	if !ok {
1533		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1534	}
1535
1536	input, ok := in.Parameters.(*ListStreamProcessorsInput)
1537	_ = input
1538	if !ok {
1539		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1540	}
1541
1542	request.Request.URL.Path = "/"
1543	request.Request.Method = "POST"
1544	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1545	if err != nil {
1546		return out, metadata, &smithy.SerializationError{Err: err}
1547	}
1548	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1549	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.ListStreamProcessors")
1550
1551	jsonEncoder := smithyjson.NewEncoder()
1552	if err := awsAwsjson11_serializeOpDocumentListStreamProcessorsInput(input, jsonEncoder.Value); err != nil {
1553		return out, metadata, &smithy.SerializationError{Err: err}
1554	}
1555
1556	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1557		return out, metadata, &smithy.SerializationError{Err: err}
1558	}
1559
1560	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1561		return out, metadata, &smithy.SerializationError{Err: err}
1562	}
1563	in.Request = request
1564
1565	return next.HandleSerialize(ctx, in)
1566}
1567
1568type awsAwsjson11_serializeOpRecognizeCelebrities struct {
1569}
1570
1571func (*awsAwsjson11_serializeOpRecognizeCelebrities) ID() string {
1572	return "OperationSerializer"
1573}
1574
1575func (m *awsAwsjson11_serializeOpRecognizeCelebrities) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1576	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1577) {
1578	request, ok := in.Request.(*smithyhttp.Request)
1579	if !ok {
1580		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1581	}
1582
1583	input, ok := in.Parameters.(*RecognizeCelebritiesInput)
1584	_ = input
1585	if !ok {
1586		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1587	}
1588
1589	request.Request.URL.Path = "/"
1590	request.Request.Method = "POST"
1591	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1592	if err != nil {
1593		return out, metadata, &smithy.SerializationError{Err: err}
1594	}
1595	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1596	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.RecognizeCelebrities")
1597
1598	jsonEncoder := smithyjson.NewEncoder()
1599	if err := awsAwsjson11_serializeOpDocumentRecognizeCelebritiesInput(input, jsonEncoder.Value); err != nil {
1600		return out, metadata, &smithy.SerializationError{Err: err}
1601	}
1602
1603	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1604		return out, metadata, &smithy.SerializationError{Err: err}
1605	}
1606
1607	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1608		return out, metadata, &smithy.SerializationError{Err: err}
1609	}
1610	in.Request = request
1611
1612	return next.HandleSerialize(ctx, in)
1613}
1614
1615type awsAwsjson11_serializeOpSearchFaces struct {
1616}
1617
1618func (*awsAwsjson11_serializeOpSearchFaces) ID() string {
1619	return "OperationSerializer"
1620}
1621
1622func (m *awsAwsjson11_serializeOpSearchFaces) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1623	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1624) {
1625	request, ok := in.Request.(*smithyhttp.Request)
1626	if !ok {
1627		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1628	}
1629
1630	input, ok := in.Parameters.(*SearchFacesInput)
1631	_ = input
1632	if !ok {
1633		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1634	}
1635
1636	request.Request.URL.Path = "/"
1637	request.Request.Method = "POST"
1638	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1639	if err != nil {
1640		return out, metadata, &smithy.SerializationError{Err: err}
1641	}
1642	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1643	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.SearchFaces")
1644
1645	jsonEncoder := smithyjson.NewEncoder()
1646	if err := awsAwsjson11_serializeOpDocumentSearchFacesInput(input, jsonEncoder.Value); err != nil {
1647		return out, metadata, &smithy.SerializationError{Err: err}
1648	}
1649
1650	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1651		return out, metadata, &smithy.SerializationError{Err: err}
1652	}
1653
1654	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1655		return out, metadata, &smithy.SerializationError{Err: err}
1656	}
1657	in.Request = request
1658
1659	return next.HandleSerialize(ctx, in)
1660}
1661
1662type awsAwsjson11_serializeOpSearchFacesByImage struct {
1663}
1664
1665func (*awsAwsjson11_serializeOpSearchFacesByImage) ID() string {
1666	return "OperationSerializer"
1667}
1668
1669func (m *awsAwsjson11_serializeOpSearchFacesByImage) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1670	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1671) {
1672	request, ok := in.Request.(*smithyhttp.Request)
1673	if !ok {
1674		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1675	}
1676
1677	input, ok := in.Parameters.(*SearchFacesByImageInput)
1678	_ = input
1679	if !ok {
1680		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1681	}
1682
1683	request.Request.URL.Path = "/"
1684	request.Request.Method = "POST"
1685	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1686	if err != nil {
1687		return out, metadata, &smithy.SerializationError{Err: err}
1688	}
1689	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1690	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.SearchFacesByImage")
1691
1692	jsonEncoder := smithyjson.NewEncoder()
1693	if err := awsAwsjson11_serializeOpDocumentSearchFacesByImageInput(input, jsonEncoder.Value); err != nil {
1694		return out, metadata, &smithy.SerializationError{Err: err}
1695	}
1696
1697	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1698		return out, metadata, &smithy.SerializationError{Err: err}
1699	}
1700
1701	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1702		return out, metadata, &smithy.SerializationError{Err: err}
1703	}
1704	in.Request = request
1705
1706	return next.HandleSerialize(ctx, in)
1707}
1708
1709type awsAwsjson11_serializeOpStartCelebrityRecognition struct {
1710}
1711
1712func (*awsAwsjson11_serializeOpStartCelebrityRecognition) ID() string {
1713	return "OperationSerializer"
1714}
1715
1716func (m *awsAwsjson11_serializeOpStartCelebrityRecognition) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1717	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1718) {
1719	request, ok := in.Request.(*smithyhttp.Request)
1720	if !ok {
1721		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1722	}
1723
1724	input, ok := in.Parameters.(*StartCelebrityRecognitionInput)
1725	_ = input
1726	if !ok {
1727		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1728	}
1729
1730	request.Request.URL.Path = "/"
1731	request.Request.Method = "POST"
1732	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1733	if err != nil {
1734		return out, metadata, &smithy.SerializationError{Err: err}
1735	}
1736	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1737	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartCelebrityRecognition")
1738
1739	jsonEncoder := smithyjson.NewEncoder()
1740	if err := awsAwsjson11_serializeOpDocumentStartCelebrityRecognitionInput(input, jsonEncoder.Value); err != nil {
1741		return out, metadata, &smithy.SerializationError{Err: err}
1742	}
1743
1744	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1745		return out, metadata, &smithy.SerializationError{Err: err}
1746	}
1747
1748	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1749		return out, metadata, &smithy.SerializationError{Err: err}
1750	}
1751	in.Request = request
1752
1753	return next.HandleSerialize(ctx, in)
1754}
1755
1756type awsAwsjson11_serializeOpStartContentModeration struct {
1757}
1758
1759func (*awsAwsjson11_serializeOpStartContentModeration) ID() string {
1760	return "OperationSerializer"
1761}
1762
1763func (m *awsAwsjson11_serializeOpStartContentModeration) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1764	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1765) {
1766	request, ok := in.Request.(*smithyhttp.Request)
1767	if !ok {
1768		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1769	}
1770
1771	input, ok := in.Parameters.(*StartContentModerationInput)
1772	_ = input
1773	if !ok {
1774		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1775	}
1776
1777	request.Request.URL.Path = "/"
1778	request.Request.Method = "POST"
1779	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1780	if err != nil {
1781		return out, metadata, &smithy.SerializationError{Err: err}
1782	}
1783	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1784	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartContentModeration")
1785
1786	jsonEncoder := smithyjson.NewEncoder()
1787	if err := awsAwsjson11_serializeOpDocumentStartContentModerationInput(input, jsonEncoder.Value); err != nil {
1788		return out, metadata, &smithy.SerializationError{Err: err}
1789	}
1790
1791	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1792		return out, metadata, &smithy.SerializationError{Err: err}
1793	}
1794
1795	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1796		return out, metadata, &smithy.SerializationError{Err: err}
1797	}
1798	in.Request = request
1799
1800	return next.HandleSerialize(ctx, in)
1801}
1802
1803type awsAwsjson11_serializeOpStartFaceDetection struct {
1804}
1805
1806func (*awsAwsjson11_serializeOpStartFaceDetection) ID() string {
1807	return "OperationSerializer"
1808}
1809
1810func (m *awsAwsjson11_serializeOpStartFaceDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1811	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1812) {
1813	request, ok := in.Request.(*smithyhttp.Request)
1814	if !ok {
1815		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1816	}
1817
1818	input, ok := in.Parameters.(*StartFaceDetectionInput)
1819	_ = input
1820	if !ok {
1821		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1822	}
1823
1824	request.Request.URL.Path = "/"
1825	request.Request.Method = "POST"
1826	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1827	if err != nil {
1828		return out, metadata, &smithy.SerializationError{Err: err}
1829	}
1830	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1831	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartFaceDetection")
1832
1833	jsonEncoder := smithyjson.NewEncoder()
1834	if err := awsAwsjson11_serializeOpDocumentStartFaceDetectionInput(input, jsonEncoder.Value); err != nil {
1835		return out, metadata, &smithy.SerializationError{Err: err}
1836	}
1837
1838	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1839		return out, metadata, &smithy.SerializationError{Err: err}
1840	}
1841
1842	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1843		return out, metadata, &smithy.SerializationError{Err: err}
1844	}
1845	in.Request = request
1846
1847	return next.HandleSerialize(ctx, in)
1848}
1849
1850type awsAwsjson11_serializeOpStartFaceSearch struct {
1851}
1852
1853func (*awsAwsjson11_serializeOpStartFaceSearch) ID() string {
1854	return "OperationSerializer"
1855}
1856
1857func (m *awsAwsjson11_serializeOpStartFaceSearch) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1858	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1859) {
1860	request, ok := in.Request.(*smithyhttp.Request)
1861	if !ok {
1862		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1863	}
1864
1865	input, ok := in.Parameters.(*StartFaceSearchInput)
1866	_ = input
1867	if !ok {
1868		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1869	}
1870
1871	request.Request.URL.Path = "/"
1872	request.Request.Method = "POST"
1873	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1874	if err != nil {
1875		return out, metadata, &smithy.SerializationError{Err: err}
1876	}
1877	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1878	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartFaceSearch")
1879
1880	jsonEncoder := smithyjson.NewEncoder()
1881	if err := awsAwsjson11_serializeOpDocumentStartFaceSearchInput(input, jsonEncoder.Value); err != nil {
1882		return out, metadata, &smithy.SerializationError{Err: err}
1883	}
1884
1885	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1886		return out, metadata, &smithy.SerializationError{Err: err}
1887	}
1888
1889	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1890		return out, metadata, &smithy.SerializationError{Err: err}
1891	}
1892	in.Request = request
1893
1894	return next.HandleSerialize(ctx, in)
1895}
1896
1897type awsAwsjson11_serializeOpStartLabelDetection struct {
1898}
1899
1900func (*awsAwsjson11_serializeOpStartLabelDetection) ID() string {
1901	return "OperationSerializer"
1902}
1903
1904func (m *awsAwsjson11_serializeOpStartLabelDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1905	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1906) {
1907	request, ok := in.Request.(*smithyhttp.Request)
1908	if !ok {
1909		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1910	}
1911
1912	input, ok := in.Parameters.(*StartLabelDetectionInput)
1913	_ = input
1914	if !ok {
1915		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1916	}
1917
1918	request.Request.URL.Path = "/"
1919	request.Request.Method = "POST"
1920	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1921	if err != nil {
1922		return out, metadata, &smithy.SerializationError{Err: err}
1923	}
1924	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1925	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartLabelDetection")
1926
1927	jsonEncoder := smithyjson.NewEncoder()
1928	if err := awsAwsjson11_serializeOpDocumentStartLabelDetectionInput(input, jsonEncoder.Value); err != nil {
1929		return out, metadata, &smithy.SerializationError{Err: err}
1930	}
1931
1932	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1933		return out, metadata, &smithy.SerializationError{Err: err}
1934	}
1935
1936	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1937		return out, metadata, &smithy.SerializationError{Err: err}
1938	}
1939	in.Request = request
1940
1941	return next.HandleSerialize(ctx, in)
1942}
1943
1944type awsAwsjson11_serializeOpStartPersonTracking struct {
1945}
1946
1947func (*awsAwsjson11_serializeOpStartPersonTracking) ID() string {
1948	return "OperationSerializer"
1949}
1950
1951func (m *awsAwsjson11_serializeOpStartPersonTracking) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1952	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
1953) {
1954	request, ok := in.Request.(*smithyhttp.Request)
1955	if !ok {
1956		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
1957	}
1958
1959	input, ok := in.Parameters.(*StartPersonTrackingInput)
1960	_ = input
1961	if !ok {
1962		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
1963	}
1964
1965	request.Request.URL.Path = "/"
1966	request.Request.Method = "POST"
1967	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
1968	if err != nil {
1969		return out, metadata, &smithy.SerializationError{Err: err}
1970	}
1971	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
1972	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartPersonTracking")
1973
1974	jsonEncoder := smithyjson.NewEncoder()
1975	if err := awsAwsjson11_serializeOpDocumentStartPersonTrackingInput(input, jsonEncoder.Value); err != nil {
1976		return out, metadata, &smithy.SerializationError{Err: err}
1977	}
1978
1979	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
1980		return out, metadata, &smithy.SerializationError{Err: err}
1981	}
1982
1983	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
1984		return out, metadata, &smithy.SerializationError{Err: err}
1985	}
1986	in.Request = request
1987
1988	return next.HandleSerialize(ctx, in)
1989}
1990
1991type awsAwsjson11_serializeOpStartProjectVersion struct {
1992}
1993
1994func (*awsAwsjson11_serializeOpStartProjectVersion) ID() string {
1995	return "OperationSerializer"
1996}
1997
1998func (m *awsAwsjson11_serializeOpStartProjectVersion) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
1999	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2000) {
2001	request, ok := in.Request.(*smithyhttp.Request)
2002	if !ok {
2003		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2004	}
2005
2006	input, ok := in.Parameters.(*StartProjectVersionInput)
2007	_ = input
2008	if !ok {
2009		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2010	}
2011
2012	request.Request.URL.Path = "/"
2013	request.Request.Method = "POST"
2014	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2015	if err != nil {
2016		return out, metadata, &smithy.SerializationError{Err: err}
2017	}
2018	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2019	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartProjectVersion")
2020
2021	jsonEncoder := smithyjson.NewEncoder()
2022	if err := awsAwsjson11_serializeOpDocumentStartProjectVersionInput(input, jsonEncoder.Value); err != nil {
2023		return out, metadata, &smithy.SerializationError{Err: err}
2024	}
2025
2026	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2027		return out, metadata, &smithy.SerializationError{Err: err}
2028	}
2029
2030	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2031		return out, metadata, &smithy.SerializationError{Err: err}
2032	}
2033	in.Request = request
2034
2035	return next.HandleSerialize(ctx, in)
2036}
2037
2038type awsAwsjson11_serializeOpStartSegmentDetection struct {
2039}
2040
2041func (*awsAwsjson11_serializeOpStartSegmentDetection) ID() string {
2042	return "OperationSerializer"
2043}
2044
2045func (m *awsAwsjson11_serializeOpStartSegmentDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2046	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2047) {
2048	request, ok := in.Request.(*smithyhttp.Request)
2049	if !ok {
2050		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2051	}
2052
2053	input, ok := in.Parameters.(*StartSegmentDetectionInput)
2054	_ = input
2055	if !ok {
2056		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2057	}
2058
2059	request.Request.URL.Path = "/"
2060	request.Request.Method = "POST"
2061	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2062	if err != nil {
2063		return out, metadata, &smithy.SerializationError{Err: err}
2064	}
2065	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2066	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartSegmentDetection")
2067
2068	jsonEncoder := smithyjson.NewEncoder()
2069	if err := awsAwsjson11_serializeOpDocumentStartSegmentDetectionInput(input, jsonEncoder.Value); err != nil {
2070		return out, metadata, &smithy.SerializationError{Err: err}
2071	}
2072
2073	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2074		return out, metadata, &smithy.SerializationError{Err: err}
2075	}
2076
2077	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2078		return out, metadata, &smithy.SerializationError{Err: err}
2079	}
2080	in.Request = request
2081
2082	return next.HandleSerialize(ctx, in)
2083}
2084
2085type awsAwsjson11_serializeOpStartStreamProcessor struct {
2086}
2087
2088func (*awsAwsjson11_serializeOpStartStreamProcessor) ID() string {
2089	return "OperationSerializer"
2090}
2091
2092func (m *awsAwsjson11_serializeOpStartStreamProcessor) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2093	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2094) {
2095	request, ok := in.Request.(*smithyhttp.Request)
2096	if !ok {
2097		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2098	}
2099
2100	input, ok := in.Parameters.(*StartStreamProcessorInput)
2101	_ = input
2102	if !ok {
2103		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2104	}
2105
2106	request.Request.URL.Path = "/"
2107	request.Request.Method = "POST"
2108	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2109	if err != nil {
2110		return out, metadata, &smithy.SerializationError{Err: err}
2111	}
2112	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2113	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartStreamProcessor")
2114
2115	jsonEncoder := smithyjson.NewEncoder()
2116	if err := awsAwsjson11_serializeOpDocumentStartStreamProcessorInput(input, jsonEncoder.Value); err != nil {
2117		return out, metadata, &smithy.SerializationError{Err: err}
2118	}
2119
2120	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2121		return out, metadata, &smithy.SerializationError{Err: err}
2122	}
2123
2124	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2125		return out, metadata, &smithy.SerializationError{Err: err}
2126	}
2127	in.Request = request
2128
2129	return next.HandleSerialize(ctx, in)
2130}
2131
2132type awsAwsjson11_serializeOpStartTextDetection struct {
2133}
2134
2135func (*awsAwsjson11_serializeOpStartTextDetection) ID() string {
2136	return "OperationSerializer"
2137}
2138
2139func (m *awsAwsjson11_serializeOpStartTextDetection) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2140	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2141) {
2142	request, ok := in.Request.(*smithyhttp.Request)
2143	if !ok {
2144		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2145	}
2146
2147	input, ok := in.Parameters.(*StartTextDetectionInput)
2148	_ = input
2149	if !ok {
2150		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2151	}
2152
2153	request.Request.URL.Path = "/"
2154	request.Request.Method = "POST"
2155	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2156	if err != nil {
2157		return out, metadata, &smithy.SerializationError{Err: err}
2158	}
2159	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2160	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StartTextDetection")
2161
2162	jsonEncoder := smithyjson.NewEncoder()
2163	if err := awsAwsjson11_serializeOpDocumentStartTextDetectionInput(input, jsonEncoder.Value); err != nil {
2164		return out, metadata, &smithy.SerializationError{Err: err}
2165	}
2166
2167	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2168		return out, metadata, &smithy.SerializationError{Err: err}
2169	}
2170
2171	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2172		return out, metadata, &smithy.SerializationError{Err: err}
2173	}
2174	in.Request = request
2175
2176	return next.HandleSerialize(ctx, in)
2177}
2178
2179type awsAwsjson11_serializeOpStopProjectVersion struct {
2180}
2181
2182func (*awsAwsjson11_serializeOpStopProjectVersion) ID() string {
2183	return "OperationSerializer"
2184}
2185
2186func (m *awsAwsjson11_serializeOpStopProjectVersion) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2187	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2188) {
2189	request, ok := in.Request.(*smithyhttp.Request)
2190	if !ok {
2191		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2192	}
2193
2194	input, ok := in.Parameters.(*StopProjectVersionInput)
2195	_ = input
2196	if !ok {
2197		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2198	}
2199
2200	request.Request.URL.Path = "/"
2201	request.Request.Method = "POST"
2202	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2203	if err != nil {
2204		return out, metadata, &smithy.SerializationError{Err: err}
2205	}
2206	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2207	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StopProjectVersion")
2208
2209	jsonEncoder := smithyjson.NewEncoder()
2210	if err := awsAwsjson11_serializeOpDocumentStopProjectVersionInput(input, jsonEncoder.Value); err != nil {
2211		return out, metadata, &smithy.SerializationError{Err: err}
2212	}
2213
2214	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2215		return out, metadata, &smithy.SerializationError{Err: err}
2216	}
2217
2218	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2219		return out, metadata, &smithy.SerializationError{Err: err}
2220	}
2221	in.Request = request
2222
2223	return next.HandleSerialize(ctx, in)
2224}
2225
2226type awsAwsjson11_serializeOpStopStreamProcessor struct {
2227}
2228
2229func (*awsAwsjson11_serializeOpStopStreamProcessor) ID() string {
2230	return "OperationSerializer"
2231}
2232
2233func (m *awsAwsjson11_serializeOpStopStreamProcessor) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2234	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2235) {
2236	request, ok := in.Request.(*smithyhttp.Request)
2237	if !ok {
2238		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2239	}
2240
2241	input, ok := in.Parameters.(*StopStreamProcessorInput)
2242	_ = input
2243	if !ok {
2244		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2245	}
2246
2247	request.Request.URL.Path = "/"
2248	request.Request.Method = "POST"
2249	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2250	if err != nil {
2251		return out, metadata, &smithy.SerializationError{Err: err}
2252	}
2253	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2254	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StopStreamProcessor")
2255
2256	jsonEncoder := smithyjson.NewEncoder()
2257	if err := awsAwsjson11_serializeOpDocumentStopStreamProcessorInput(input, jsonEncoder.Value); err != nil {
2258		return out, metadata, &smithy.SerializationError{Err: err}
2259	}
2260
2261	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2262		return out, metadata, &smithy.SerializationError{Err: err}
2263	}
2264
2265	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2266		return out, metadata, &smithy.SerializationError{Err: err}
2267	}
2268	in.Request = request
2269
2270	return next.HandleSerialize(ctx, in)
2271}
2272func awsAwsjson11_serializeDocumentAsset(v *types.Asset, value smithyjson.Value) error {
2273	object := value.Object()
2274	defer object.Close()
2275
2276	if v.GroundTruthManifest != nil {
2277		ok := object.Key("GroundTruthManifest")
2278		if err := awsAwsjson11_serializeDocumentGroundTruthManifest(v.GroundTruthManifest, ok); err != nil {
2279			return err
2280		}
2281	}
2282
2283	return nil
2284}
2285
2286func awsAwsjson11_serializeDocumentAssets(v []types.Asset, value smithyjson.Value) error {
2287	array := value.Array()
2288	defer array.Close()
2289
2290	for i := range v {
2291		av := array.Value()
2292		if err := awsAwsjson11_serializeDocumentAsset(&v[i], av); err != nil {
2293			return err
2294		}
2295	}
2296	return nil
2297}
2298
2299func awsAwsjson11_serializeDocumentAttributes(v []types.Attribute, value smithyjson.Value) error {
2300	array := value.Array()
2301	defer array.Close()
2302
2303	for i := range v {
2304		av := array.Value()
2305		av.String(string(v[i]))
2306	}
2307	return nil
2308}
2309
2310func awsAwsjson11_serializeDocumentBoundingBox(v *types.BoundingBox, value smithyjson.Value) error {
2311	object := value.Object()
2312	defer object.Close()
2313
2314	if v.Height != nil {
2315		ok := object.Key("Height")
2316		ok.Float(*v.Height)
2317	}
2318
2319	if v.Left != nil {
2320		ok := object.Key("Left")
2321		ok.Float(*v.Left)
2322	}
2323
2324	if v.Top != nil {
2325		ok := object.Key("Top")
2326		ok.Float(*v.Top)
2327	}
2328
2329	if v.Width != nil {
2330		ok := object.Key("Width")
2331		ok.Float(*v.Width)
2332	}
2333
2334	return nil
2335}
2336
2337func awsAwsjson11_serializeDocumentContentClassifiers(v []types.ContentClassifier, value smithyjson.Value) error {
2338	array := value.Array()
2339	defer array.Close()
2340
2341	for i := range v {
2342		av := array.Value()
2343		av.String(string(v[i]))
2344	}
2345	return nil
2346}
2347
2348func awsAwsjson11_serializeDocumentDetectionFilter(v *types.DetectionFilter, value smithyjson.Value) error {
2349	object := value.Object()
2350	defer object.Close()
2351
2352	if v.MinBoundingBoxHeight != nil {
2353		ok := object.Key("MinBoundingBoxHeight")
2354		ok.Float(*v.MinBoundingBoxHeight)
2355	}
2356
2357	if v.MinBoundingBoxWidth != nil {
2358		ok := object.Key("MinBoundingBoxWidth")
2359		ok.Float(*v.MinBoundingBoxWidth)
2360	}
2361
2362	if v.MinConfidence != nil {
2363		ok := object.Key("MinConfidence")
2364		ok.Float(*v.MinConfidence)
2365	}
2366
2367	return nil
2368}
2369
2370func awsAwsjson11_serializeDocumentDetectTextFilters(v *types.DetectTextFilters, value smithyjson.Value) error {
2371	object := value.Object()
2372	defer object.Close()
2373
2374	if v.RegionsOfInterest != nil {
2375		ok := object.Key("RegionsOfInterest")
2376		if err := awsAwsjson11_serializeDocumentRegionsOfInterest(v.RegionsOfInterest, ok); err != nil {
2377			return err
2378		}
2379	}
2380
2381	if v.WordFilter != nil {
2382		ok := object.Key("WordFilter")
2383		if err := awsAwsjson11_serializeDocumentDetectionFilter(v.WordFilter, ok); err != nil {
2384			return err
2385		}
2386	}
2387
2388	return nil
2389}
2390
2391func awsAwsjson11_serializeDocumentFaceIdList(v []string, value smithyjson.Value) error {
2392	array := value.Array()
2393	defer array.Close()
2394
2395	for i := range v {
2396		av := array.Value()
2397		av.String(v[i])
2398	}
2399	return nil
2400}
2401
2402func awsAwsjson11_serializeDocumentFaceSearchSettings(v *types.FaceSearchSettings, value smithyjson.Value) error {
2403	object := value.Object()
2404	defer object.Close()
2405
2406	if v.CollectionId != nil {
2407		ok := object.Key("CollectionId")
2408		ok.String(*v.CollectionId)
2409	}
2410
2411	if v.FaceMatchThreshold != nil {
2412		ok := object.Key("FaceMatchThreshold")
2413		ok.Float(*v.FaceMatchThreshold)
2414	}
2415
2416	return nil
2417}
2418
2419func awsAwsjson11_serializeDocumentGroundTruthManifest(v *types.GroundTruthManifest, value smithyjson.Value) error {
2420	object := value.Object()
2421	defer object.Close()
2422
2423	if v.S3Object != nil {
2424		ok := object.Key("S3Object")
2425		if err := awsAwsjson11_serializeDocumentS3Object(v.S3Object, ok); err != nil {
2426			return err
2427		}
2428	}
2429
2430	return nil
2431}
2432
2433func awsAwsjson11_serializeDocumentHumanLoopConfig(v *types.HumanLoopConfig, value smithyjson.Value) error {
2434	object := value.Object()
2435	defer object.Close()
2436
2437	if v.DataAttributes != nil {
2438		ok := object.Key("DataAttributes")
2439		if err := awsAwsjson11_serializeDocumentHumanLoopDataAttributes(v.DataAttributes, ok); err != nil {
2440			return err
2441		}
2442	}
2443
2444	if v.FlowDefinitionArn != nil {
2445		ok := object.Key("FlowDefinitionArn")
2446		ok.String(*v.FlowDefinitionArn)
2447	}
2448
2449	if v.HumanLoopName != nil {
2450		ok := object.Key("HumanLoopName")
2451		ok.String(*v.HumanLoopName)
2452	}
2453
2454	return nil
2455}
2456
2457func awsAwsjson11_serializeDocumentHumanLoopDataAttributes(v *types.HumanLoopDataAttributes, value smithyjson.Value) error {
2458	object := value.Object()
2459	defer object.Close()
2460
2461	if v.ContentClassifiers != nil {
2462		ok := object.Key("ContentClassifiers")
2463		if err := awsAwsjson11_serializeDocumentContentClassifiers(v.ContentClassifiers, ok); err != nil {
2464			return err
2465		}
2466	}
2467
2468	return nil
2469}
2470
2471func awsAwsjson11_serializeDocumentImage(v *types.Image, value smithyjson.Value) error {
2472	object := value.Object()
2473	defer object.Close()
2474
2475	if v.Bytes != nil {
2476		ok := object.Key("Bytes")
2477		ok.Base64EncodeBytes(v.Bytes)
2478	}
2479
2480	if v.S3Object != nil {
2481		ok := object.Key("S3Object")
2482		if err := awsAwsjson11_serializeDocumentS3Object(v.S3Object, ok); err != nil {
2483			return err
2484		}
2485	}
2486
2487	return nil
2488}
2489
2490func awsAwsjson11_serializeDocumentKinesisDataStream(v *types.KinesisDataStream, value smithyjson.Value) error {
2491	object := value.Object()
2492	defer object.Close()
2493
2494	if v.Arn != nil {
2495		ok := object.Key("Arn")
2496		ok.String(*v.Arn)
2497	}
2498
2499	return nil
2500}
2501
2502func awsAwsjson11_serializeDocumentKinesisVideoStream(v *types.KinesisVideoStream, value smithyjson.Value) error {
2503	object := value.Object()
2504	defer object.Close()
2505
2506	if v.Arn != nil {
2507		ok := object.Key("Arn")
2508		ok.String(*v.Arn)
2509	}
2510
2511	return nil
2512}
2513
2514func awsAwsjson11_serializeDocumentNotificationChannel(v *types.NotificationChannel, value smithyjson.Value) error {
2515	object := value.Object()
2516	defer object.Close()
2517
2518	if v.RoleArn != nil {
2519		ok := object.Key("RoleArn")
2520		ok.String(*v.RoleArn)
2521	}
2522
2523	if v.SNSTopicArn != nil {
2524		ok := object.Key("SNSTopicArn")
2525		ok.String(*v.SNSTopicArn)
2526	}
2527
2528	return nil
2529}
2530
2531func awsAwsjson11_serializeDocumentOutputConfig(v *types.OutputConfig, value smithyjson.Value) error {
2532	object := value.Object()
2533	defer object.Close()
2534
2535	if v.S3Bucket != nil {
2536		ok := object.Key("S3Bucket")
2537		ok.String(*v.S3Bucket)
2538	}
2539
2540	if v.S3KeyPrefix != nil {
2541		ok := object.Key("S3KeyPrefix")
2542		ok.String(*v.S3KeyPrefix)
2543	}
2544
2545	return nil
2546}
2547
2548func awsAwsjson11_serializeDocumentProtectiveEquipmentSummarizationAttributes(v *types.ProtectiveEquipmentSummarizationAttributes, value smithyjson.Value) error {
2549	object := value.Object()
2550	defer object.Close()
2551
2552	if v.MinConfidence != nil {
2553		ok := object.Key("MinConfidence")
2554		ok.Float(*v.MinConfidence)
2555	}
2556
2557	if v.RequiredEquipmentTypes != nil {
2558		ok := object.Key("RequiredEquipmentTypes")
2559		if err := awsAwsjson11_serializeDocumentProtectiveEquipmentTypes(v.RequiredEquipmentTypes, ok); err != nil {
2560			return err
2561		}
2562	}
2563
2564	return nil
2565}
2566
2567func awsAwsjson11_serializeDocumentProtectiveEquipmentTypes(v []types.ProtectiveEquipmentType, value smithyjson.Value) error {
2568	array := value.Array()
2569	defer array.Close()
2570
2571	for i := range v {
2572		av := array.Value()
2573		av.String(string(v[i]))
2574	}
2575	return nil
2576}
2577
2578func awsAwsjson11_serializeDocumentRegionOfInterest(v *types.RegionOfInterest, value smithyjson.Value) error {
2579	object := value.Object()
2580	defer object.Close()
2581
2582	if v.BoundingBox != nil {
2583		ok := object.Key("BoundingBox")
2584		if err := awsAwsjson11_serializeDocumentBoundingBox(v.BoundingBox, ok); err != nil {
2585			return err
2586		}
2587	}
2588
2589	return nil
2590}
2591
2592func awsAwsjson11_serializeDocumentRegionsOfInterest(v []types.RegionOfInterest, value smithyjson.Value) error {
2593	array := value.Array()
2594	defer array.Close()
2595
2596	for i := range v {
2597		av := array.Value()
2598		if err := awsAwsjson11_serializeDocumentRegionOfInterest(&v[i], av); err != nil {
2599			return err
2600		}
2601	}
2602	return nil
2603}
2604
2605func awsAwsjson11_serializeDocumentS3Object(v *types.S3Object, value smithyjson.Value) error {
2606	object := value.Object()
2607	defer object.Close()
2608
2609	if v.Bucket != nil {
2610		ok := object.Key("Bucket")
2611		ok.String(*v.Bucket)
2612	}
2613
2614	if v.Name != nil {
2615		ok := object.Key("Name")
2616		ok.String(*v.Name)
2617	}
2618
2619	if v.Version != nil {
2620		ok := object.Key("Version")
2621		ok.String(*v.Version)
2622	}
2623
2624	return nil
2625}
2626
2627func awsAwsjson11_serializeDocumentSegmentTypes(v []types.SegmentType, value smithyjson.Value) error {
2628	array := value.Array()
2629	defer array.Close()
2630
2631	for i := range v {
2632		av := array.Value()
2633		av.String(string(v[i]))
2634	}
2635	return nil
2636}
2637
2638func awsAwsjson11_serializeDocumentStartSegmentDetectionFilters(v *types.StartSegmentDetectionFilters, value smithyjson.Value) error {
2639	object := value.Object()
2640	defer object.Close()
2641
2642	if v.ShotFilter != nil {
2643		ok := object.Key("ShotFilter")
2644		if err := awsAwsjson11_serializeDocumentStartShotDetectionFilter(v.ShotFilter, ok); err != nil {
2645			return err
2646		}
2647	}
2648
2649	if v.TechnicalCueFilter != nil {
2650		ok := object.Key("TechnicalCueFilter")
2651		if err := awsAwsjson11_serializeDocumentStartTechnicalCueDetectionFilter(v.TechnicalCueFilter, ok); err != nil {
2652			return err
2653		}
2654	}
2655
2656	return nil
2657}
2658
2659func awsAwsjson11_serializeDocumentStartShotDetectionFilter(v *types.StartShotDetectionFilter, value smithyjson.Value) error {
2660	object := value.Object()
2661	defer object.Close()
2662
2663	if v.MinSegmentConfidence != nil {
2664		ok := object.Key("MinSegmentConfidence")
2665		ok.Float(*v.MinSegmentConfidence)
2666	}
2667
2668	return nil
2669}
2670
2671func awsAwsjson11_serializeDocumentStartTechnicalCueDetectionFilter(v *types.StartTechnicalCueDetectionFilter, value smithyjson.Value) error {
2672	object := value.Object()
2673	defer object.Close()
2674
2675	if v.MinSegmentConfidence != nil {
2676		ok := object.Key("MinSegmentConfidence")
2677		ok.Float(*v.MinSegmentConfidence)
2678	}
2679
2680	return nil
2681}
2682
2683func awsAwsjson11_serializeDocumentStartTextDetectionFilters(v *types.StartTextDetectionFilters, value smithyjson.Value) error {
2684	object := value.Object()
2685	defer object.Close()
2686
2687	if v.RegionsOfInterest != nil {
2688		ok := object.Key("RegionsOfInterest")
2689		if err := awsAwsjson11_serializeDocumentRegionsOfInterest(v.RegionsOfInterest, ok); err != nil {
2690			return err
2691		}
2692	}
2693
2694	if v.WordFilter != nil {
2695		ok := object.Key("WordFilter")
2696		if err := awsAwsjson11_serializeDocumentDetectionFilter(v.WordFilter, ok); err != nil {
2697			return err
2698		}
2699	}
2700
2701	return nil
2702}
2703
2704func awsAwsjson11_serializeDocumentStreamProcessorInput(v *types.StreamProcessorInput, value smithyjson.Value) error {
2705	object := value.Object()
2706	defer object.Close()
2707
2708	if v.KinesisVideoStream != nil {
2709		ok := object.Key("KinesisVideoStream")
2710		if err := awsAwsjson11_serializeDocumentKinesisVideoStream(v.KinesisVideoStream, ok); err != nil {
2711			return err
2712		}
2713	}
2714
2715	return nil
2716}
2717
2718func awsAwsjson11_serializeDocumentStreamProcessorOutput(v *types.StreamProcessorOutput, value smithyjson.Value) error {
2719	object := value.Object()
2720	defer object.Close()
2721
2722	if v.KinesisDataStream != nil {
2723		ok := object.Key("KinesisDataStream")
2724		if err := awsAwsjson11_serializeDocumentKinesisDataStream(v.KinesisDataStream, ok); err != nil {
2725			return err
2726		}
2727	}
2728
2729	return nil
2730}
2731
2732func awsAwsjson11_serializeDocumentStreamProcessorSettings(v *types.StreamProcessorSettings, value smithyjson.Value) error {
2733	object := value.Object()
2734	defer object.Close()
2735
2736	if v.FaceSearch != nil {
2737		ok := object.Key("FaceSearch")
2738		if err := awsAwsjson11_serializeDocumentFaceSearchSettings(v.FaceSearch, ok); err != nil {
2739			return err
2740		}
2741	}
2742
2743	return nil
2744}
2745
2746func awsAwsjson11_serializeDocumentTestingData(v *types.TestingData, value smithyjson.Value) error {
2747	object := value.Object()
2748	defer object.Close()
2749
2750	if v.Assets != nil {
2751		ok := object.Key("Assets")
2752		if err := awsAwsjson11_serializeDocumentAssets(v.Assets, ok); err != nil {
2753			return err
2754		}
2755	}
2756
2757	if v.AutoCreate {
2758		ok := object.Key("AutoCreate")
2759		ok.Boolean(v.AutoCreate)
2760	}
2761
2762	return nil
2763}
2764
2765func awsAwsjson11_serializeDocumentTrainingData(v *types.TrainingData, value smithyjson.Value) error {
2766	object := value.Object()
2767	defer object.Close()
2768
2769	if v.Assets != nil {
2770		ok := object.Key("Assets")
2771		if err := awsAwsjson11_serializeDocumentAssets(v.Assets, ok); err != nil {
2772			return err
2773		}
2774	}
2775
2776	return nil
2777}
2778
2779func awsAwsjson11_serializeDocumentVersionNames(v []string, value smithyjson.Value) error {
2780	array := value.Array()
2781	defer array.Close()
2782
2783	for i := range v {
2784		av := array.Value()
2785		av.String(v[i])
2786	}
2787	return nil
2788}
2789
2790func awsAwsjson11_serializeDocumentVideo(v *types.Video, value smithyjson.Value) error {
2791	object := value.Object()
2792	defer object.Close()
2793
2794	if v.S3Object != nil {
2795		ok := object.Key("S3Object")
2796		if err := awsAwsjson11_serializeDocumentS3Object(v.S3Object, ok); err != nil {
2797			return err
2798		}
2799	}
2800
2801	return nil
2802}
2803
2804func awsAwsjson11_serializeOpDocumentCompareFacesInput(v *CompareFacesInput, value smithyjson.Value) error {
2805	object := value.Object()
2806	defer object.Close()
2807
2808	if len(v.QualityFilter) > 0 {
2809		ok := object.Key("QualityFilter")
2810		ok.String(string(v.QualityFilter))
2811	}
2812
2813	if v.SimilarityThreshold != nil {
2814		ok := object.Key("SimilarityThreshold")
2815		ok.Float(*v.SimilarityThreshold)
2816	}
2817
2818	if v.SourceImage != nil {
2819		ok := object.Key("SourceImage")
2820		if err := awsAwsjson11_serializeDocumentImage(v.SourceImage, ok); err != nil {
2821			return err
2822		}
2823	}
2824
2825	if v.TargetImage != nil {
2826		ok := object.Key("TargetImage")
2827		if err := awsAwsjson11_serializeDocumentImage(v.TargetImage, ok); err != nil {
2828			return err
2829		}
2830	}
2831
2832	return nil
2833}
2834
2835func awsAwsjson11_serializeOpDocumentCreateCollectionInput(v *CreateCollectionInput, value smithyjson.Value) error {
2836	object := value.Object()
2837	defer object.Close()
2838
2839	if v.CollectionId != nil {
2840		ok := object.Key("CollectionId")
2841		ok.String(*v.CollectionId)
2842	}
2843
2844	return nil
2845}
2846
2847func awsAwsjson11_serializeOpDocumentCreateProjectInput(v *CreateProjectInput, value smithyjson.Value) error {
2848	object := value.Object()
2849	defer object.Close()
2850
2851	if v.ProjectName != nil {
2852		ok := object.Key("ProjectName")
2853		ok.String(*v.ProjectName)
2854	}
2855
2856	return nil
2857}
2858
2859func awsAwsjson11_serializeOpDocumentCreateProjectVersionInput(v *CreateProjectVersionInput, value smithyjson.Value) error {
2860	object := value.Object()
2861	defer object.Close()
2862
2863	if v.OutputConfig != nil {
2864		ok := object.Key("OutputConfig")
2865		if err := awsAwsjson11_serializeDocumentOutputConfig(v.OutputConfig, ok); err != nil {
2866			return err
2867		}
2868	}
2869
2870	if v.ProjectArn != nil {
2871		ok := object.Key("ProjectArn")
2872		ok.String(*v.ProjectArn)
2873	}
2874
2875	if v.TestingData != nil {
2876		ok := object.Key("TestingData")
2877		if err := awsAwsjson11_serializeDocumentTestingData(v.TestingData, ok); err != nil {
2878			return err
2879		}
2880	}
2881
2882	if v.TrainingData != nil {
2883		ok := object.Key("TrainingData")
2884		if err := awsAwsjson11_serializeDocumentTrainingData(v.TrainingData, ok); err != nil {
2885			return err
2886		}
2887	}
2888
2889	if v.VersionName != nil {
2890		ok := object.Key("VersionName")
2891		ok.String(*v.VersionName)
2892	}
2893
2894	return nil
2895}
2896
2897func awsAwsjson11_serializeOpDocumentCreateStreamProcessorInput(v *CreateStreamProcessorInput, value smithyjson.Value) error {
2898	object := value.Object()
2899	defer object.Close()
2900
2901	if v.Input != nil {
2902		ok := object.Key("Input")
2903		if err := awsAwsjson11_serializeDocumentStreamProcessorInput(v.Input, ok); err != nil {
2904			return err
2905		}
2906	}
2907
2908	if v.Name != nil {
2909		ok := object.Key("Name")
2910		ok.String(*v.Name)
2911	}
2912
2913	if v.Output != nil {
2914		ok := object.Key("Output")
2915		if err := awsAwsjson11_serializeDocumentStreamProcessorOutput(v.Output, ok); err != nil {
2916			return err
2917		}
2918	}
2919
2920	if v.RoleArn != nil {
2921		ok := object.Key("RoleArn")
2922		ok.String(*v.RoleArn)
2923	}
2924
2925	if v.Settings != nil {
2926		ok := object.Key("Settings")
2927		if err := awsAwsjson11_serializeDocumentStreamProcessorSettings(v.Settings, ok); err != nil {
2928			return err
2929		}
2930	}
2931
2932	return nil
2933}
2934
2935func awsAwsjson11_serializeOpDocumentDeleteCollectionInput(v *DeleteCollectionInput, value smithyjson.Value) error {
2936	object := value.Object()
2937	defer object.Close()
2938
2939	if v.CollectionId != nil {
2940		ok := object.Key("CollectionId")
2941		ok.String(*v.CollectionId)
2942	}
2943
2944	return nil
2945}
2946
2947func awsAwsjson11_serializeOpDocumentDeleteFacesInput(v *DeleteFacesInput, value smithyjson.Value) error {
2948	object := value.Object()
2949	defer object.Close()
2950
2951	if v.CollectionId != nil {
2952		ok := object.Key("CollectionId")
2953		ok.String(*v.CollectionId)
2954	}
2955
2956	if v.FaceIds != nil {
2957		ok := object.Key("FaceIds")
2958		if err := awsAwsjson11_serializeDocumentFaceIdList(v.FaceIds, ok); err != nil {
2959			return err
2960		}
2961	}
2962
2963	return nil
2964}
2965
2966func awsAwsjson11_serializeOpDocumentDeleteProjectInput(v *DeleteProjectInput, value smithyjson.Value) error {
2967	object := value.Object()
2968	defer object.Close()
2969
2970	if v.ProjectArn != nil {
2971		ok := object.Key("ProjectArn")
2972		ok.String(*v.ProjectArn)
2973	}
2974
2975	return nil
2976}
2977
2978func awsAwsjson11_serializeOpDocumentDeleteProjectVersionInput(v *DeleteProjectVersionInput, value smithyjson.Value) error {
2979	object := value.Object()
2980	defer object.Close()
2981
2982	if v.ProjectVersionArn != nil {
2983		ok := object.Key("ProjectVersionArn")
2984		ok.String(*v.ProjectVersionArn)
2985	}
2986
2987	return nil
2988}
2989
2990func awsAwsjson11_serializeOpDocumentDeleteStreamProcessorInput(v *DeleteStreamProcessorInput, value smithyjson.Value) error {
2991	object := value.Object()
2992	defer object.Close()
2993
2994	if v.Name != nil {
2995		ok := object.Key("Name")
2996		ok.String(*v.Name)
2997	}
2998
2999	return nil
3000}
3001
3002func awsAwsjson11_serializeOpDocumentDescribeCollectionInput(v *DescribeCollectionInput, value smithyjson.Value) error {
3003	object := value.Object()
3004	defer object.Close()
3005
3006	if v.CollectionId != nil {
3007		ok := object.Key("CollectionId")
3008		ok.String(*v.CollectionId)
3009	}
3010
3011	return nil
3012}
3013
3014func awsAwsjson11_serializeOpDocumentDescribeProjectsInput(v *DescribeProjectsInput, value smithyjson.Value) error {
3015	object := value.Object()
3016	defer object.Close()
3017
3018	if v.MaxResults != nil {
3019		ok := object.Key("MaxResults")
3020		ok.Integer(*v.MaxResults)
3021	}
3022
3023	if v.NextToken != nil {
3024		ok := object.Key("NextToken")
3025		ok.String(*v.NextToken)
3026	}
3027
3028	return nil
3029}
3030
3031func awsAwsjson11_serializeOpDocumentDescribeProjectVersionsInput(v *DescribeProjectVersionsInput, value smithyjson.Value) error {
3032	object := value.Object()
3033	defer object.Close()
3034
3035	if v.MaxResults != nil {
3036		ok := object.Key("MaxResults")
3037		ok.Integer(*v.MaxResults)
3038	}
3039
3040	if v.NextToken != nil {
3041		ok := object.Key("NextToken")
3042		ok.String(*v.NextToken)
3043	}
3044
3045	if v.ProjectArn != nil {
3046		ok := object.Key("ProjectArn")
3047		ok.String(*v.ProjectArn)
3048	}
3049
3050	if v.VersionNames != nil {
3051		ok := object.Key("VersionNames")
3052		if err := awsAwsjson11_serializeDocumentVersionNames(v.VersionNames, ok); err != nil {
3053			return err
3054		}
3055	}
3056
3057	return nil
3058}
3059
3060func awsAwsjson11_serializeOpDocumentDescribeStreamProcessorInput(v *DescribeStreamProcessorInput, value smithyjson.Value) error {
3061	object := value.Object()
3062	defer object.Close()
3063
3064	if v.Name != nil {
3065		ok := object.Key("Name")
3066		ok.String(*v.Name)
3067	}
3068
3069	return nil
3070}
3071
3072func awsAwsjson11_serializeOpDocumentDetectCustomLabelsInput(v *DetectCustomLabelsInput, value smithyjson.Value) error {
3073	object := value.Object()
3074	defer object.Close()
3075
3076	if v.Image != nil {
3077		ok := object.Key("Image")
3078		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3079			return err
3080		}
3081	}
3082
3083	if v.MaxResults != nil {
3084		ok := object.Key("MaxResults")
3085		ok.Integer(*v.MaxResults)
3086	}
3087
3088	if v.MinConfidence != nil {
3089		ok := object.Key("MinConfidence")
3090		ok.Float(*v.MinConfidence)
3091	}
3092
3093	if v.ProjectVersionArn != nil {
3094		ok := object.Key("ProjectVersionArn")
3095		ok.String(*v.ProjectVersionArn)
3096	}
3097
3098	return nil
3099}
3100
3101func awsAwsjson11_serializeOpDocumentDetectFacesInput(v *DetectFacesInput, value smithyjson.Value) error {
3102	object := value.Object()
3103	defer object.Close()
3104
3105	if v.Attributes != nil {
3106		ok := object.Key("Attributes")
3107		if err := awsAwsjson11_serializeDocumentAttributes(v.Attributes, ok); err != nil {
3108			return err
3109		}
3110	}
3111
3112	if v.Image != nil {
3113		ok := object.Key("Image")
3114		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3115			return err
3116		}
3117	}
3118
3119	return nil
3120}
3121
3122func awsAwsjson11_serializeOpDocumentDetectLabelsInput(v *DetectLabelsInput, value smithyjson.Value) error {
3123	object := value.Object()
3124	defer object.Close()
3125
3126	if v.Image != nil {
3127		ok := object.Key("Image")
3128		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3129			return err
3130		}
3131	}
3132
3133	if v.MaxLabels != nil {
3134		ok := object.Key("MaxLabels")
3135		ok.Integer(*v.MaxLabels)
3136	}
3137
3138	if v.MinConfidence != nil {
3139		ok := object.Key("MinConfidence")
3140		ok.Float(*v.MinConfidence)
3141	}
3142
3143	return nil
3144}
3145
3146func awsAwsjson11_serializeOpDocumentDetectModerationLabelsInput(v *DetectModerationLabelsInput, value smithyjson.Value) error {
3147	object := value.Object()
3148	defer object.Close()
3149
3150	if v.HumanLoopConfig != nil {
3151		ok := object.Key("HumanLoopConfig")
3152		if err := awsAwsjson11_serializeDocumentHumanLoopConfig(v.HumanLoopConfig, ok); err != nil {
3153			return err
3154		}
3155	}
3156
3157	if v.Image != nil {
3158		ok := object.Key("Image")
3159		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3160			return err
3161		}
3162	}
3163
3164	if v.MinConfidence != nil {
3165		ok := object.Key("MinConfidence")
3166		ok.Float(*v.MinConfidence)
3167	}
3168
3169	return nil
3170}
3171
3172func awsAwsjson11_serializeOpDocumentDetectProtectiveEquipmentInput(v *DetectProtectiveEquipmentInput, value smithyjson.Value) error {
3173	object := value.Object()
3174	defer object.Close()
3175
3176	if v.Image != nil {
3177		ok := object.Key("Image")
3178		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3179			return err
3180		}
3181	}
3182
3183	if v.SummarizationAttributes != nil {
3184		ok := object.Key("SummarizationAttributes")
3185		if err := awsAwsjson11_serializeDocumentProtectiveEquipmentSummarizationAttributes(v.SummarizationAttributes, ok); err != nil {
3186			return err
3187		}
3188	}
3189
3190	return nil
3191}
3192
3193func awsAwsjson11_serializeOpDocumentDetectTextInput(v *DetectTextInput, value smithyjson.Value) error {
3194	object := value.Object()
3195	defer object.Close()
3196
3197	if v.Filters != nil {
3198		ok := object.Key("Filters")
3199		if err := awsAwsjson11_serializeDocumentDetectTextFilters(v.Filters, ok); err != nil {
3200			return err
3201		}
3202	}
3203
3204	if v.Image != nil {
3205		ok := object.Key("Image")
3206		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3207			return err
3208		}
3209	}
3210
3211	return nil
3212}
3213
3214func awsAwsjson11_serializeOpDocumentGetCelebrityInfoInput(v *GetCelebrityInfoInput, value smithyjson.Value) error {
3215	object := value.Object()
3216	defer object.Close()
3217
3218	if v.Id != nil {
3219		ok := object.Key("Id")
3220		ok.String(*v.Id)
3221	}
3222
3223	return nil
3224}
3225
3226func awsAwsjson11_serializeOpDocumentGetCelebrityRecognitionInput(v *GetCelebrityRecognitionInput, value smithyjson.Value) error {
3227	object := value.Object()
3228	defer object.Close()
3229
3230	if v.JobId != nil {
3231		ok := object.Key("JobId")
3232		ok.String(*v.JobId)
3233	}
3234
3235	if v.MaxResults != nil {
3236		ok := object.Key("MaxResults")
3237		ok.Integer(*v.MaxResults)
3238	}
3239
3240	if v.NextToken != nil {
3241		ok := object.Key("NextToken")
3242		ok.String(*v.NextToken)
3243	}
3244
3245	if len(v.SortBy) > 0 {
3246		ok := object.Key("SortBy")
3247		ok.String(string(v.SortBy))
3248	}
3249
3250	return nil
3251}
3252
3253func awsAwsjson11_serializeOpDocumentGetContentModerationInput(v *GetContentModerationInput, value smithyjson.Value) error {
3254	object := value.Object()
3255	defer object.Close()
3256
3257	if v.JobId != nil {
3258		ok := object.Key("JobId")
3259		ok.String(*v.JobId)
3260	}
3261
3262	if v.MaxResults != nil {
3263		ok := object.Key("MaxResults")
3264		ok.Integer(*v.MaxResults)
3265	}
3266
3267	if v.NextToken != nil {
3268		ok := object.Key("NextToken")
3269		ok.String(*v.NextToken)
3270	}
3271
3272	if len(v.SortBy) > 0 {
3273		ok := object.Key("SortBy")
3274		ok.String(string(v.SortBy))
3275	}
3276
3277	return nil
3278}
3279
3280func awsAwsjson11_serializeOpDocumentGetFaceDetectionInput(v *GetFaceDetectionInput, value smithyjson.Value) error {
3281	object := value.Object()
3282	defer object.Close()
3283
3284	if v.JobId != nil {
3285		ok := object.Key("JobId")
3286		ok.String(*v.JobId)
3287	}
3288
3289	if v.MaxResults != nil {
3290		ok := object.Key("MaxResults")
3291		ok.Integer(*v.MaxResults)
3292	}
3293
3294	if v.NextToken != nil {
3295		ok := object.Key("NextToken")
3296		ok.String(*v.NextToken)
3297	}
3298
3299	return nil
3300}
3301
3302func awsAwsjson11_serializeOpDocumentGetFaceSearchInput(v *GetFaceSearchInput, value smithyjson.Value) error {
3303	object := value.Object()
3304	defer object.Close()
3305
3306	if v.JobId != nil {
3307		ok := object.Key("JobId")
3308		ok.String(*v.JobId)
3309	}
3310
3311	if v.MaxResults != nil {
3312		ok := object.Key("MaxResults")
3313		ok.Integer(*v.MaxResults)
3314	}
3315
3316	if v.NextToken != nil {
3317		ok := object.Key("NextToken")
3318		ok.String(*v.NextToken)
3319	}
3320
3321	if len(v.SortBy) > 0 {
3322		ok := object.Key("SortBy")
3323		ok.String(string(v.SortBy))
3324	}
3325
3326	return nil
3327}
3328
3329func awsAwsjson11_serializeOpDocumentGetLabelDetectionInput(v *GetLabelDetectionInput, value smithyjson.Value) error {
3330	object := value.Object()
3331	defer object.Close()
3332
3333	if v.JobId != nil {
3334		ok := object.Key("JobId")
3335		ok.String(*v.JobId)
3336	}
3337
3338	if v.MaxResults != nil {
3339		ok := object.Key("MaxResults")
3340		ok.Integer(*v.MaxResults)
3341	}
3342
3343	if v.NextToken != nil {
3344		ok := object.Key("NextToken")
3345		ok.String(*v.NextToken)
3346	}
3347
3348	if len(v.SortBy) > 0 {
3349		ok := object.Key("SortBy")
3350		ok.String(string(v.SortBy))
3351	}
3352
3353	return nil
3354}
3355
3356func awsAwsjson11_serializeOpDocumentGetPersonTrackingInput(v *GetPersonTrackingInput, value smithyjson.Value) error {
3357	object := value.Object()
3358	defer object.Close()
3359
3360	if v.JobId != nil {
3361		ok := object.Key("JobId")
3362		ok.String(*v.JobId)
3363	}
3364
3365	if v.MaxResults != nil {
3366		ok := object.Key("MaxResults")
3367		ok.Integer(*v.MaxResults)
3368	}
3369
3370	if v.NextToken != nil {
3371		ok := object.Key("NextToken")
3372		ok.String(*v.NextToken)
3373	}
3374
3375	if len(v.SortBy) > 0 {
3376		ok := object.Key("SortBy")
3377		ok.String(string(v.SortBy))
3378	}
3379
3380	return nil
3381}
3382
3383func awsAwsjson11_serializeOpDocumentGetSegmentDetectionInput(v *GetSegmentDetectionInput, value smithyjson.Value) error {
3384	object := value.Object()
3385	defer object.Close()
3386
3387	if v.JobId != nil {
3388		ok := object.Key("JobId")
3389		ok.String(*v.JobId)
3390	}
3391
3392	if v.MaxResults != nil {
3393		ok := object.Key("MaxResults")
3394		ok.Integer(*v.MaxResults)
3395	}
3396
3397	if v.NextToken != nil {
3398		ok := object.Key("NextToken")
3399		ok.String(*v.NextToken)
3400	}
3401
3402	return nil
3403}
3404
3405func awsAwsjson11_serializeOpDocumentGetTextDetectionInput(v *GetTextDetectionInput, value smithyjson.Value) error {
3406	object := value.Object()
3407	defer object.Close()
3408
3409	if v.JobId != nil {
3410		ok := object.Key("JobId")
3411		ok.String(*v.JobId)
3412	}
3413
3414	if v.MaxResults != nil {
3415		ok := object.Key("MaxResults")
3416		ok.Integer(*v.MaxResults)
3417	}
3418
3419	if v.NextToken != nil {
3420		ok := object.Key("NextToken")
3421		ok.String(*v.NextToken)
3422	}
3423
3424	return nil
3425}
3426
3427func awsAwsjson11_serializeOpDocumentIndexFacesInput(v *IndexFacesInput, value smithyjson.Value) error {
3428	object := value.Object()
3429	defer object.Close()
3430
3431	if v.CollectionId != nil {
3432		ok := object.Key("CollectionId")
3433		ok.String(*v.CollectionId)
3434	}
3435
3436	if v.DetectionAttributes != nil {
3437		ok := object.Key("DetectionAttributes")
3438		if err := awsAwsjson11_serializeDocumentAttributes(v.DetectionAttributes, ok); err != nil {
3439			return err
3440		}
3441	}
3442
3443	if v.ExternalImageId != nil {
3444		ok := object.Key("ExternalImageId")
3445		ok.String(*v.ExternalImageId)
3446	}
3447
3448	if v.Image != nil {
3449		ok := object.Key("Image")
3450		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3451			return err
3452		}
3453	}
3454
3455	if v.MaxFaces != nil {
3456		ok := object.Key("MaxFaces")
3457		ok.Integer(*v.MaxFaces)
3458	}
3459
3460	if len(v.QualityFilter) > 0 {
3461		ok := object.Key("QualityFilter")
3462		ok.String(string(v.QualityFilter))
3463	}
3464
3465	return nil
3466}
3467
3468func awsAwsjson11_serializeOpDocumentListCollectionsInput(v *ListCollectionsInput, value smithyjson.Value) error {
3469	object := value.Object()
3470	defer object.Close()
3471
3472	if v.MaxResults != nil {
3473		ok := object.Key("MaxResults")
3474		ok.Integer(*v.MaxResults)
3475	}
3476
3477	if v.NextToken != nil {
3478		ok := object.Key("NextToken")
3479		ok.String(*v.NextToken)
3480	}
3481
3482	return nil
3483}
3484
3485func awsAwsjson11_serializeOpDocumentListFacesInput(v *ListFacesInput, value smithyjson.Value) error {
3486	object := value.Object()
3487	defer object.Close()
3488
3489	if v.CollectionId != nil {
3490		ok := object.Key("CollectionId")
3491		ok.String(*v.CollectionId)
3492	}
3493
3494	if v.MaxResults != nil {
3495		ok := object.Key("MaxResults")
3496		ok.Integer(*v.MaxResults)
3497	}
3498
3499	if v.NextToken != nil {
3500		ok := object.Key("NextToken")
3501		ok.String(*v.NextToken)
3502	}
3503
3504	return nil
3505}
3506
3507func awsAwsjson11_serializeOpDocumentListStreamProcessorsInput(v *ListStreamProcessorsInput, value smithyjson.Value) error {
3508	object := value.Object()
3509	defer object.Close()
3510
3511	if v.MaxResults != nil {
3512		ok := object.Key("MaxResults")
3513		ok.Integer(*v.MaxResults)
3514	}
3515
3516	if v.NextToken != nil {
3517		ok := object.Key("NextToken")
3518		ok.String(*v.NextToken)
3519	}
3520
3521	return nil
3522}
3523
3524func awsAwsjson11_serializeOpDocumentRecognizeCelebritiesInput(v *RecognizeCelebritiesInput, value smithyjson.Value) error {
3525	object := value.Object()
3526	defer object.Close()
3527
3528	if v.Image != nil {
3529		ok := object.Key("Image")
3530		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3531			return err
3532		}
3533	}
3534
3535	return nil
3536}
3537
3538func awsAwsjson11_serializeOpDocumentSearchFacesByImageInput(v *SearchFacesByImageInput, value smithyjson.Value) error {
3539	object := value.Object()
3540	defer object.Close()
3541
3542	if v.CollectionId != nil {
3543		ok := object.Key("CollectionId")
3544		ok.String(*v.CollectionId)
3545	}
3546
3547	if v.FaceMatchThreshold != nil {
3548		ok := object.Key("FaceMatchThreshold")
3549		ok.Float(*v.FaceMatchThreshold)
3550	}
3551
3552	if v.Image != nil {
3553		ok := object.Key("Image")
3554		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3555			return err
3556		}
3557	}
3558
3559	if v.MaxFaces != nil {
3560		ok := object.Key("MaxFaces")
3561		ok.Integer(*v.MaxFaces)
3562	}
3563
3564	if len(v.QualityFilter) > 0 {
3565		ok := object.Key("QualityFilter")
3566		ok.String(string(v.QualityFilter))
3567	}
3568
3569	return nil
3570}
3571
3572func awsAwsjson11_serializeOpDocumentSearchFacesInput(v *SearchFacesInput, value smithyjson.Value) error {
3573	object := value.Object()
3574	defer object.Close()
3575
3576	if v.CollectionId != nil {
3577		ok := object.Key("CollectionId")
3578		ok.String(*v.CollectionId)
3579	}
3580
3581	if v.FaceId != nil {
3582		ok := object.Key("FaceId")
3583		ok.String(*v.FaceId)
3584	}
3585
3586	if v.FaceMatchThreshold != nil {
3587		ok := object.Key("FaceMatchThreshold")
3588		ok.Float(*v.FaceMatchThreshold)
3589	}
3590
3591	if v.MaxFaces != nil {
3592		ok := object.Key("MaxFaces")
3593		ok.Integer(*v.MaxFaces)
3594	}
3595
3596	return nil
3597}
3598
3599func awsAwsjson11_serializeOpDocumentStartCelebrityRecognitionInput(v *StartCelebrityRecognitionInput, value smithyjson.Value) error {
3600	object := value.Object()
3601	defer object.Close()
3602
3603	if v.ClientRequestToken != nil {
3604		ok := object.Key("ClientRequestToken")
3605		ok.String(*v.ClientRequestToken)
3606	}
3607
3608	if v.JobTag != nil {
3609		ok := object.Key("JobTag")
3610		ok.String(*v.JobTag)
3611	}
3612
3613	if v.NotificationChannel != nil {
3614		ok := object.Key("NotificationChannel")
3615		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3616			return err
3617		}
3618	}
3619
3620	if v.Video != nil {
3621		ok := object.Key("Video")
3622		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3623			return err
3624		}
3625	}
3626
3627	return nil
3628}
3629
3630func awsAwsjson11_serializeOpDocumentStartContentModerationInput(v *StartContentModerationInput, value smithyjson.Value) error {
3631	object := value.Object()
3632	defer object.Close()
3633
3634	if v.ClientRequestToken != nil {
3635		ok := object.Key("ClientRequestToken")
3636		ok.String(*v.ClientRequestToken)
3637	}
3638
3639	if v.JobTag != nil {
3640		ok := object.Key("JobTag")
3641		ok.String(*v.JobTag)
3642	}
3643
3644	if v.MinConfidence != nil {
3645		ok := object.Key("MinConfidence")
3646		ok.Float(*v.MinConfidence)
3647	}
3648
3649	if v.NotificationChannel != nil {
3650		ok := object.Key("NotificationChannel")
3651		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3652			return err
3653		}
3654	}
3655
3656	if v.Video != nil {
3657		ok := object.Key("Video")
3658		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3659			return err
3660		}
3661	}
3662
3663	return nil
3664}
3665
3666func awsAwsjson11_serializeOpDocumentStartFaceDetectionInput(v *StartFaceDetectionInput, value smithyjson.Value) error {
3667	object := value.Object()
3668	defer object.Close()
3669
3670	if v.ClientRequestToken != nil {
3671		ok := object.Key("ClientRequestToken")
3672		ok.String(*v.ClientRequestToken)
3673	}
3674
3675	if len(v.FaceAttributes) > 0 {
3676		ok := object.Key("FaceAttributes")
3677		ok.String(string(v.FaceAttributes))
3678	}
3679
3680	if v.JobTag != nil {
3681		ok := object.Key("JobTag")
3682		ok.String(*v.JobTag)
3683	}
3684
3685	if v.NotificationChannel != nil {
3686		ok := object.Key("NotificationChannel")
3687		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3688			return err
3689		}
3690	}
3691
3692	if v.Video != nil {
3693		ok := object.Key("Video")
3694		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3695			return err
3696		}
3697	}
3698
3699	return nil
3700}
3701
3702func awsAwsjson11_serializeOpDocumentStartFaceSearchInput(v *StartFaceSearchInput, value smithyjson.Value) error {
3703	object := value.Object()
3704	defer object.Close()
3705
3706	if v.ClientRequestToken != nil {
3707		ok := object.Key("ClientRequestToken")
3708		ok.String(*v.ClientRequestToken)
3709	}
3710
3711	if v.CollectionId != nil {
3712		ok := object.Key("CollectionId")
3713		ok.String(*v.CollectionId)
3714	}
3715
3716	if v.FaceMatchThreshold != nil {
3717		ok := object.Key("FaceMatchThreshold")
3718		ok.Float(*v.FaceMatchThreshold)
3719	}
3720
3721	if v.JobTag != nil {
3722		ok := object.Key("JobTag")
3723		ok.String(*v.JobTag)
3724	}
3725
3726	if v.NotificationChannel != nil {
3727		ok := object.Key("NotificationChannel")
3728		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3729			return err
3730		}
3731	}
3732
3733	if v.Video != nil {
3734		ok := object.Key("Video")
3735		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3736			return err
3737		}
3738	}
3739
3740	return nil
3741}
3742
3743func awsAwsjson11_serializeOpDocumentStartLabelDetectionInput(v *StartLabelDetectionInput, value smithyjson.Value) error {
3744	object := value.Object()
3745	defer object.Close()
3746
3747	if v.ClientRequestToken != nil {
3748		ok := object.Key("ClientRequestToken")
3749		ok.String(*v.ClientRequestToken)
3750	}
3751
3752	if v.JobTag != nil {
3753		ok := object.Key("JobTag")
3754		ok.String(*v.JobTag)
3755	}
3756
3757	if v.MinConfidence != nil {
3758		ok := object.Key("MinConfidence")
3759		ok.Float(*v.MinConfidence)
3760	}
3761
3762	if v.NotificationChannel != nil {
3763		ok := object.Key("NotificationChannel")
3764		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3765			return err
3766		}
3767	}
3768
3769	if v.Video != nil {
3770		ok := object.Key("Video")
3771		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3772			return err
3773		}
3774	}
3775
3776	return nil
3777}
3778
3779func awsAwsjson11_serializeOpDocumentStartPersonTrackingInput(v *StartPersonTrackingInput, value smithyjson.Value) error {
3780	object := value.Object()
3781	defer object.Close()
3782
3783	if v.ClientRequestToken != nil {
3784		ok := object.Key("ClientRequestToken")
3785		ok.String(*v.ClientRequestToken)
3786	}
3787
3788	if v.JobTag != nil {
3789		ok := object.Key("JobTag")
3790		ok.String(*v.JobTag)
3791	}
3792
3793	if v.NotificationChannel != nil {
3794		ok := object.Key("NotificationChannel")
3795		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3796			return err
3797		}
3798	}
3799
3800	if v.Video != nil {
3801		ok := object.Key("Video")
3802		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3803			return err
3804		}
3805	}
3806
3807	return nil
3808}
3809
3810func awsAwsjson11_serializeOpDocumentStartProjectVersionInput(v *StartProjectVersionInput, value smithyjson.Value) error {
3811	object := value.Object()
3812	defer object.Close()
3813
3814	if v.MinInferenceUnits != nil {
3815		ok := object.Key("MinInferenceUnits")
3816		ok.Integer(*v.MinInferenceUnits)
3817	}
3818
3819	if v.ProjectVersionArn != nil {
3820		ok := object.Key("ProjectVersionArn")
3821		ok.String(*v.ProjectVersionArn)
3822	}
3823
3824	return nil
3825}
3826
3827func awsAwsjson11_serializeOpDocumentStartSegmentDetectionInput(v *StartSegmentDetectionInput, value smithyjson.Value) error {
3828	object := value.Object()
3829	defer object.Close()
3830
3831	if v.ClientRequestToken != nil {
3832		ok := object.Key("ClientRequestToken")
3833		ok.String(*v.ClientRequestToken)
3834	}
3835
3836	if v.Filters != nil {
3837		ok := object.Key("Filters")
3838		if err := awsAwsjson11_serializeDocumentStartSegmentDetectionFilters(v.Filters, ok); err != nil {
3839			return err
3840		}
3841	}
3842
3843	if v.JobTag != nil {
3844		ok := object.Key("JobTag")
3845		ok.String(*v.JobTag)
3846	}
3847
3848	if v.NotificationChannel != nil {
3849		ok := object.Key("NotificationChannel")
3850		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3851			return err
3852		}
3853	}
3854
3855	if v.SegmentTypes != nil {
3856		ok := object.Key("SegmentTypes")
3857		if err := awsAwsjson11_serializeDocumentSegmentTypes(v.SegmentTypes, ok); err != nil {
3858			return err
3859		}
3860	}
3861
3862	if v.Video != nil {
3863		ok := object.Key("Video")
3864		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3865			return err
3866		}
3867	}
3868
3869	return nil
3870}
3871
3872func awsAwsjson11_serializeOpDocumentStartStreamProcessorInput(v *StartStreamProcessorInput, value smithyjson.Value) error {
3873	object := value.Object()
3874	defer object.Close()
3875
3876	if v.Name != nil {
3877		ok := object.Key("Name")
3878		ok.String(*v.Name)
3879	}
3880
3881	return nil
3882}
3883
3884func awsAwsjson11_serializeOpDocumentStartTextDetectionInput(v *StartTextDetectionInput, value smithyjson.Value) error {
3885	object := value.Object()
3886	defer object.Close()
3887
3888	if v.ClientRequestToken != nil {
3889		ok := object.Key("ClientRequestToken")
3890		ok.String(*v.ClientRequestToken)
3891	}
3892
3893	if v.Filters != nil {
3894		ok := object.Key("Filters")
3895		if err := awsAwsjson11_serializeDocumentStartTextDetectionFilters(v.Filters, ok); err != nil {
3896			return err
3897		}
3898	}
3899
3900	if v.JobTag != nil {
3901		ok := object.Key("JobTag")
3902		ok.String(*v.JobTag)
3903	}
3904
3905	if v.NotificationChannel != nil {
3906		ok := object.Key("NotificationChannel")
3907		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3908			return err
3909		}
3910	}
3911
3912	if v.Video != nil {
3913		ok := object.Key("Video")
3914		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3915			return err
3916		}
3917	}
3918
3919	return nil
3920}
3921
3922func awsAwsjson11_serializeOpDocumentStopProjectVersionInput(v *StopProjectVersionInput, value smithyjson.Value) error {
3923	object := value.Object()
3924	defer object.Close()
3925
3926	if v.ProjectVersionArn != nil {
3927		ok := object.Key("ProjectVersionArn")
3928		ok.String(*v.ProjectVersionArn)
3929	}
3930
3931	return nil
3932}
3933
3934func awsAwsjson11_serializeOpDocumentStopStreamProcessorInput(v *StopStreamProcessorInput, value smithyjson.Value) error {
3935	object := value.Object()
3936	defer object.Close()
3937
3938	if v.Name != nil {
3939		ok := object.Key("Name")
3940		ok.String(*v.Name)
3941	}
3942
3943	return nil
3944}
3945