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_serializeOpListTagsForResource struct {
1569}
1570
1571func (*awsAwsjson11_serializeOpListTagsForResource) ID() string {
1572	return "OperationSerializer"
1573}
1574
1575func (m *awsAwsjson11_serializeOpListTagsForResource) 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.(*ListTagsForResourceInput)
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.ListTagsForResource")
1597
1598	jsonEncoder := smithyjson.NewEncoder()
1599	if err := awsAwsjson11_serializeOpDocumentListTagsForResourceInput(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_serializeOpRecognizeCelebrities struct {
1616}
1617
1618func (*awsAwsjson11_serializeOpRecognizeCelebrities) ID() string {
1619	return "OperationSerializer"
1620}
1621
1622func (m *awsAwsjson11_serializeOpRecognizeCelebrities) 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.(*RecognizeCelebritiesInput)
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.RecognizeCelebrities")
1644
1645	jsonEncoder := smithyjson.NewEncoder()
1646	if err := awsAwsjson11_serializeOpDocumentRecognizeCelebritiesInput(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_serializeOpSearchFaces struct {
1663}
1664
1665func (*awsAwsjson11_serializeOpSearchFaces) ID() string {
1666	return "OperationSerializer"
1667}
1668
1669func (m *awsAwsjson11_serializeOpSearchFaces) 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.(*SearchFacesInput)
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.SearchFaces")
1691
1692	jsonEncoder := smithyjson.NewEncoder()
1693	if err := awsAwsjson11_serializeOpDocumentSearchFacesInput(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_serializeOpSearchFacesByImage struct {
1710}
1711
1712func (*awsAwsjson11_serializeOpSearchFacesByImage) ID() string {
1713	return "OperationSerializer"
1714}
1715
1716func (m *awsAwsjson11_serializeOpSearchFacesByImage) 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.(*SearchFacesByImageInput)
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.SearchFacesByImage")
1738
1739	jsonEncoder := smithyjson.NewEncoder()
1740	if err := awsAwsjson11_serializeOpDocumentSearchFacesByImageInput(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_serializeOpStartCelebrityRecognition struct {
1757}
1758
1759func (*awsAwsjson11_serializeOpStartCelebrityRecognition) ID() string {
1760	return "OperationSerializer"
1761}
1762
1763func (m *awsAwsjson11_serializeOpStartCelebrityRecognition) 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.(*StartCelebrityRecognitionInput)
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.StartCelebrityRecognition")
1785
1786	jsonEncoder := smithyjson.NewEncoder()
1787	if err := awsAwsjson11_serializeOpDocumentStartCelebrityRecognitionInput(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_serializeOpStartContentModeration struct {
1804}
1805
1806func (*awsAwsjson11_serializeOpStartContentModeration) ID() string {
1807	return "OperationSerializer"
1808}
1809
1810func (m *awsAwsjson11_serializeOpStartContentModeration) 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.(*StartContentModerationInput)
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.StartContentModeration")
1832
1833	jsonEncoder := smithyjson.NewEncoder()
1834	if err := awsAwsjson11_serializeOpDocumentStartContentModerationInput(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_serializeOpStartFaceDetection struct {
1851}
1852
1853func (*awsAwsjson11_serializeOpStartFaceDetection) ID() string {
1854	return "OperationSerializer"
1855}
1856
1857func (m *awsAwsjson11_serializeOpStartFaceDetection) 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.(*StartFaceDetectionInput)
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.StartFaceDetection")
1879
1880	jsonEncoder := smithyjson.NewEncoder()
1881	if err := awsAwsjson11_serializeOpDocumentStartFaceDetectionInput(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_serializeOpStartFaceSearch struct {
1898}
1899
1900func (*awsAwsjson11_serializeOpStartFaceSearch) ID() string {
1901	return "OperationSerializer"
1902}
1903
1904func (m *awsAwsjson11_serializeOpStartFaceSearch) 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.(*StartFaceSearchInput)
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.StartFaceSearch")
1926
1927	jsonEncoder := smithyjson.NewEncoder()
1928	if err := awsAwsjson11_serializeOpDocumentStartFaceSearchInput(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_serializeOpStartLabelDetection struct {
1945}
1946
1947func (*awsAwsjson11_serializeOpStartLabelDetection) ID() string {
1948	return "OperationSerializer"
1949}
1950
1951func (m *awsAwsjson11_serializeOpStartLabelDetection) 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.(*StartLabelDetectionInput)
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.StartLabelDetection")
1973
1974	jsonEncoder := smithyjson.NewEncoder()
1975	if err := awsAwsjson11_serializeOpDocumentStartLabelDetectionInput(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_serializeOpStartPersonTracking struct {
1992}
1993
1994func (*awsAwsjson11_serializeOpStartPersonTracking) ID() string {
1995	return "OperationSerializer"
1996}
1997
1998func (m *awsAwsjson11_serializeOpStartPersonTracking) 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.(*StartPersonTrackingInput)
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.StartPersonTracking")
2020
2021	jsonEncoder := smithyjson.NewEncoder()
2022	if err := awsAwsjson11_serializeOpDocumentStartPersonTrackingInput(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_serializeOpStartProjectVersion struct {
2039}
2040
2041func (*awsAwsjson11_serializeOpStartProjectVersion) ID() string {
2042	return "OperationSerializer"
2043}
2044
2045func (m *awsAwsjson11_serializeOpStartProjectVersion) 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.(*StartProjectVersionInput)
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.StartProjectVersion")
2067
2068	jsonEncoder := smithyjson.NewEncoder()
2069	if err := awsAwsjson11_serializeOpDocumentStartProjectVersionInput(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_serializeOpStartSegmentDetection struct {
2086}
2087
2088func (*awsAwsjson11_serializeOpStartSegmentDetection) ID() string {
2089	return "OperationSerializer"
2090}
2091
2092func (m *awsAwsjson11_serializeOpStartSegmentDetection) 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.(*StartSegmentDetectionInput)
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.StartSegmentDetection")
2114
2115	jsonEncoder := smithyjson.NewEncoder()
2116	if err := awsAwsjson11_serializeOpDocumentStartSegmentDetectionInput(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_serializeOpStartStreamProcessor struct {
2133}
2134
2135func (*awsAwsjson11_serializeOpStartStreamProcessor) ID() string {
2136	return "OperationSerializer"
2137}
2138
2139func (m *awsAwsjson11_serializeOpStartStreamProcessor) 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.(*StartStreamProcessorInput)
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.StartStreamProcessor")
2161
2162	jsonEncoder := smithyjson.NewEncoder()
2163	if err := awsAwsjson11_serializeOpDocumentStartStreamProcessorInput(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_serializeOpStartTextDetection struct {
2180}
2181
2182func (*awsAwsjson11_serializeOpStartTextDetection) ID() string {
2183	return "OperationSerializer"
2184}
2185
2186func (m *awsAwsjson11_serializeOpStartTextDetection) 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.(*StartTextDetectionInput)
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.StartTextDetection")
2208
2209	jsonEncoder := smithyjson.NewEncoder()
2210	if err := awsAwsjson11_serializeOpDocumentStartTextDetectionInput(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_serializeOpStopProjectVersion struct {
2227}
2228
2229func (*awsAwsjson11_serializeOpStopProjectVersion) ID() string {
2230	return "OperationSerializer"
2231}
2232
2233func (m *awsAwsjson11_serializeOpStopProjectVersion) 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.(*StopProjectVersionInput)
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.StopProjectVersion")
2255
2256	jsonEncoder := smithyjson.NewEncoder()
2257	if err := awsAwsjson11_serializeOpDocumentStopProjectVersionInput(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}
2272
2273type awsAwsjson11_serializeOpStopStreamProcessor struct {
2274}
2275
2276func (*awsAwsjson11_serializeOpStopStreamProcessor) ID() string {
2277	return "OperationSerializer"
2278}
2279
2280func (m *awsAwsjson11_serializeOpStopStreamProcessor) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2281	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2282) {
2283	request, ok := in.Request.(*smithyhttp.Request)
2284	if !ok {
2285		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2286	}
2287
2288	input, ok := in.Parameters.(*StopStreamProcessorInput)
2289	_ = input
2290	if !ok {
2291		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2292	}
2293
2294	request.Request.URL.Path = "/"
2295	request.Request.Method = "POST"
2296	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2297	if err != nil {
2298		return out, metadata, &smithy.SerializationError{Err: err}
2299	}
2300	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2301	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.StopStreamProcessor")
2302
2303	jsonEncoder := smithyjson.NewEncoder()
2304	if err := awsAwsjson11_serializeOpDocumentStopStreamProcessorInput(input, jsonEncoder.Value); err != nil {
2305		return out, metadata, &smithy.SerializationError{Err: err}
2306	}
2307
2308	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2309		return out, metadata, &smithy.SerializationError{Err: err}
2310	}
2311
2312	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2313		return out, metadata, &smithy.SerializationError{Err: err}
2314	}
2315	in.Request = request
2316
2317	return next.HandleSerialize(ctx, in)
2318}
2319
2320type awsAwsjson11_serializeOpTagResource struct {
2321}
2322
2323func (*awsAwsjson11_serializeOpTagResource) ID() string {
2324	return "OperationSerializer"
2325}
2326
2327func (m *awsAwsjson11_serializeOpTagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2328	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2329) {
2330	request, ok := in.Request.(*smithyhttp.Request)
2331	if !ok {
2332		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2333	}
2334
2335	input, ok := in.Parameters.(*TagResourceInput)
2336	_ = input
2337	if !ok {
2338		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2339	}
2340
2341	request.Request.URL.Path = "/"
2342	request.Request.Method = "POST"
2343	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2344	if err != nil {
2345		return out, metadata, &smithy.SerializationError{Err: err}
2346	}
2347	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2348	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.TagResource")
2349
2350	jsonEncoder := smithyjson.NewEncoder()
2351	if err := awsAwsjson11_serializeOpDocumentTagResourceInput(input, jsonEncoder.Value); err != nil {
2352		return out, metadata, &smithy.SerializationError{Err: err}
2353	}
2354
2355	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2356		return out, metadata, &smithy.SerializationError{Err: err}
2357	}
2358
2359	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2360		return out, metadata, &smithy.SerializationError{Err: err}
2361	}
2362	in.Request = request
2363
2364	return next.HandleSerialize(ctx, in)
2365}
2366
2367type awsAwsjson11_serializeOpUntagResource struct {
2368}
2369
2370func (*awsAwsjson11_serializeOpUntagResource) ID() string {
2371	return "OperationSerializer"
2372}
2373
2374func (m *awsAwsjson11_serializeOpUntagResource) HandleSerialize(ctx context.Context, in middleware.SerializeInput, next middleware.SerializeHandler) (
2375	out middleware.SerializeOutput, metadata middleware.Metadata, err error,
2376) {
2377	request, ok := in.Request.(*smithyhttp.Request)
2378	if !ok {
2379		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown transport type %T", in.Request)}
2380	}
2381
2382	input, ok := in.Parameters.(*UntagResourceInput)
2383	_ = input
2384	if !ok {
2385		return out, metadata, &smithy.SerializationError{Err: fmt.Errorf("unknown input parameters type %T", in.Parameters)}
2386	}
2387
2388	request.Request.URL.Path = "/"
2389	request.Request.Method = "POST"
2390	httpBindingEncoder, err := httpbinding.NewEncoder(request.URL.Path, request.URL.RawQuery, request.Header)
2391	if err != nil {
2392		return out, metadata, &smithy.SerializationError{Err: err}
2393	}
2394	httpBindingEncoder.SetHeader("Content-Type").String("application/x-amz-json-1.1")
2395	httpBindingEncoder.SetHeader("X-Amz-Target").String("RekognitionService.UntagResource")
2396
2397	jsonEncoder := smithyjson.NewEncoder()
2398	if err := awsAwsjson11_serializeOpDocumentUntagResourceInput(input, jsonEncoder.Value); err != nil {
2399		return out, metadata, &smithy.SerializationError{Err: err}
2400	}
2401
2402	if request, err = request.SetStream(bytes.NewReader(jsonEncoder.Bytes())); err != nil {
2403		return out, metadata, &smithy.SerializationError{Err: err}
2404	}
2405
2406	if request.Request, err = httpBindingEncoder.Encode(request.Request); err != nil {
2407		return out, metadata, &smithy.SerializationError{Err: err}
2408	}
2409	in.Request = request
2410
2411	return next.HandleSerialize(ctx, in)
2412}
2413func awsAwsjson11_serializeDocumentAsset(v *types.Asset, value smithyjson.Value) error {
2414	object := value.Object()
2415	defer object.Close()
2416
2417	if v.GroundTruthManifest != nil {
2418		ok := object.Key("GroundTruthManifest")
2419		if err := awsAwsjson11_serializeDocumentGroundTruthManifest(v.GroundTruthManifest, ok); err != nil {
2420			return err
2421		}
2422	}
2423
2424	return nil
2425}
2426
2427func awsAwsjson11_serializeDocumentAssets(v []types.Asset, value smithyjson.Value) error {
2428	array := value.Array()
2429	defer array.Close()
2430
2431	for i := range v {
2432		av := array.Value()
2433		if err := awsAwsjson11_serializeDocumentAsset(&v[i], av); err != nil {
2434			return err
2435		}
2436	}
2437	return nil
2438}
2439
2440func awsAwsjson11_serializeDocumentAttributes(v []types.Attribute, value smithyjson.Value) error {
2441	array := value.Array()
2442	defer array.Close()
2443
2444	for i := range v {
2445		av := array.Value()
2446		av.String(string(v[i]))
2447	}
2448	return nil
2449}
2450
2451func awsAwsjson11_serializeDocumentBoundingBox(v *types.BoundingBox, value smithyjson.Value) error {
2452	object := value.Object()
2453	defer object.Close()
2454
2455	if v.Height != nil {
2456		ok := object.Key("Height")
2457		ok.Float(*v.Height)
2458	}
2459
2460	if v.Left != nil {
2461		ok := object.Key("Left")
2462		ok.Float(*v.Left)
2463	}
2464
2465	if v.Top != nil {
2466		ok := object.Key("Top")
2467		ok.Float(*v.Top)
2468	}
2469
2470	if v.Width != nil {
2471		ok := object.Key("Width")
2472		ok.Float(*v.Width)
2473	}
2474
2475	return nil
2476}
2477
2478func awsAwsjson11_serializeDocumentContentClassifiers(v []types.ContentClassifier, value smithyjson.Value) error {
2479	array := value.Array()
2480	defer array.Close()
2481
2482	for i := range v {
2483		av := array.Value()
2484		av.String(string(v[i]))
2485	}
2486	return nil
2487}
2488
2489func awsAwsjson11_serializeDocumentDetectionFilter(v *types.DetectionFilter, value smithyjson.Value) error {
2490	object := value.Object()
2491	defer object.Close()
2492
2493	if v.MinBoundingBoxHeight != nil {
2494		ok := object.Key("MinBoundingBoxHeight")
2495		ok.Float(*v.MinBoundingBoxHeight)
2496	}
2497
2498	if v.MinBoundingBoxWidth != nil {
2499		ok := object.Key("MinBoundingBoxWidth")
2500		ok.Float(*v.MinBoundingBoxWidth)
2501	}
2502
2503	if v.MinConfidence != nil {
2504		ok := object.Key("MinConfidence")
2505		ok.Float(*v.MinConfidence)
2506	}
2507
2508	return nil
2509}
2510
2511func awsAwsjson11_serializeDocumentDetectTextFilters(v *types.DetectTextFilters, value smithyjson.Value) error {
2512	object := value.Object()
2513	defer object.Close()
2514
2515	if v.RegionsOfInterest != nil {
2516		ok := object.Key("RegionsOfInterest")
2517		if err := awsAwsjson11_serializeDocumentRegionsOfInterest(v.RegionsOfInterest, ok); err != nil {
2518			return err
2519		}
2520	}
2521
2522	if v.WordFilter != nil {
2523		ok := object.Key("WordFilter")
2524		if err := awsAwsjson11_serializeDocumentDetectionFilter(v.WordFilter, ok); err != nil {
2525			return err
2526		}
2527	}
2528
2529	return nil
2530}
2531
2532func awsAwsjson11_serializeDocumentFaceIdList(v []string, value smithyjson.Value) error {
2533	array := value.Array()
2534	defer array.Close()
2535
2536	for i := range v {
2537		av := array.Value()
2538		av.String(v[i])
2539	}
2540	return nil
2541}
2542
2543func awsAwsjson11_serializeDocumentFaceSearchSettings(v *types.FaceSearchSettings, value smithyjson.Value) error {
2544	object := value.Object()
2545	defer object.Close()
2546
2547	if v.CollectionId != nil {
2548		ok := object.Key("CollectionId")
2549		ok.String(*v.CollectionId)
2550	}
2551
2552	if v.FaceMatchThreshold != nil {
2553		ok := object.Key("FaceMatchThreshold")
2554		ok.Float(*v.FaceMatchThreshold)
2555	}
2556
2557	return nil
2558}
2559
2560func awsAwsjson11_serializeDocumentGroundTruthManifest(v *types.GroundTruthManifest, value smithyjson.Value) error {
2561	object := value.Object()
2562	defer object.Close()
2563
2564	if v.S3Object != nil {
2565		ok := object.Key("S3Object")
2566		if err := awsAwsjson11_serializeDocumentS3Object(v.S3Object, ok); err != nil {
2567			return err
2568		}
2569	}
2570
2571	return nil
2572}
2573
2574func awsAwsjson11_serializeDocumentHumanLoopConfig(v *types.HumanLoopConfig, value smithyjson.Value) error {
2575	object := value.Object()
2576	defer object.Close()
2577
2578	if v.DataAttributes != nil {
2579		ok := object.Key("DataAttributes")
2580		if err := awsAwsjson11_serializeDocumentHumanLoopDataAttributes(v.DataAttributes, ok); err != nil {
2581			return err
2582		}
2583	}
2584
2585	if v.FlowDefinitionArn != nil {
2586		ok := object.Key("FlowDefinitionArn")
2587		ok.String(*v.FlowDefinitionArn)
2588	}
2589
2590	if v.HumanLoopName != nil {
2591		ok := object.Key("HumanLoopName")
2592		ok.String(*v.HumanLoopName)
2593	}
2594
2595	return nil
2596}
2597
2598func awsAwsjson11_serializeDocumentHumanLoopDataAttributes(v *types.HumanLoopDataAttributes, value smithyjson.Value) error {
2599	object := value.Object()
2600	defer object.Close()
2601
2602	if v.ContentClassifiers != nil {
2603		ok := object.Key("ContentClassifiers")
2604		if err := awsAwsjson11_serializeDocumentContentClassifiers(v.ContentClassifiers, ok); err != nil {
2605			return err
2606		}
2607	}
2608
2609	return nil
2610}
2611
2612func awsAwsjson11_serializeDocumentImage(v *types.Image, value smithyjson.Value) error {
2613	object := value.Object()
2614	defer object.Close()
2615
2616	if v.Bytes != nil {
2617		ok := object.Key("Bytes")
2618		ok.Base64EncodeBytes(v.Bytes)
2619	}
2620
2621	if v.S3Object != nil {
2622		ok := object.Key("S3Object")
2623		if err := awsAwsjson11_serializeDocumentS3Object(v.S3Object, ok); err != nil {
2624			return err
2625		}
2626	}
2627
2628	return nil
2629}
2630
2631func awsAwsjson11_serializeDocumentKinesisDataStream(v *types.KinesisDataStream, value smithyjson.Value) error {
2632	object := value.Object()
2633	defer object.Close()
2634
2635	if v.Arn != nil {
2636		ok := object.Key("Arn")
2637		ok.String(*v.Arn)
2638	}
2639
2640	return nil
2641}
2642
2643func awsAwsjson11_serializeDocumentKinesisVideoStream(v *types.KinesisVideoStream, value smithyjson.Value) error {
2644	object := value.Object()
2645	defer object.Close()
2646
2647	if v.Arn != nil {
2648		ok := object.Key("Arn")
2649		ok.String(*v.Arn)
2650	}
2651
2652	return nil
2653}
2654
2655func awsAwsjson11_serializeDocumentNotificationChannel(v *types.NotificationChannel, value smithyjson.Value) error {
2656	object := value.Object()
2657	defer object.Close()
2658
2659	if v.RoleArn != nil {
2660		ok := object.Key("RoleArn")
2661		ok.String(*v.RoleArn)
2662	}
2663
2664	if v.SNSTopicArn != nil {
2665		ok := object.Key("SNSTopicArn")
2666		ok.String(*v.SNSTopicArn)
2667	}
2668
2669	return nil
2670}
2671
2672func awsAwsjson11_serializeDocumentOutputConfig(v *types.OutputConfig, value smithyjson.Value) error {
2673	object := value.Object()
2674	defer object.Close()
2675
2676	if v.S3Bucket != nil {
2677		ok := object.Key("S3Bucket")
2678		ok.String(*v.S3Bucket)
2679	}
2680
2681	if v.S3KeyPrefix != nil {
2682		ok := object.Key("S3KeyPrefix")
2683		ok.String(*v.S3KeyPrefix)
2684	}
2685
2686	return nil
2687}
2688
2689func awsAwsjson11_serializeDocumentProtectiveEquipmentSummarizationAttributes(v *types.ProtectiveEquipmentSummarizationAttributes, value smithyjson.Value) error {
2690	object := value.Object()
2691	defer object.Close()
2692
2693	if v.MinConfidence != nil {
2694		ok := object.Key("MinConfidence")
2695		ok.Float(*v.MinConfidence)
2696	}
2697
2698	if v.RequiredEquipmentTypes != nil {
2699		ok := object.Key("RequiredEquipmentTypes")
2700		if err := awsAwsjson11_serializeDocumentProtectiveEquipmentTypes(v.RequiredEquipmentTypes, ok); err != nil {
2701			return err
2702		}
2703	}
2704
2705	return nil
2706}
2707
2708func awsAwsjson11_serializeDocumentProtectiveEquipmentTypes(v []types.ProtectiveEquipmentType, value smithyjson.Value) error {
2709	array := value.Array()
2710	defer array.Close()
2711
2712	for i := range v {
2713		av := array.Value()
2714		av.String(string(v[i]))
2715	}
2716	return nil
2717}
2718
2719func awsAwsjson11_serializeDocumentRegionOfInterest(v *types.RegionOfInterest, value smithyjson.Value) error {
2720	object := value.Object()
2721	defer object.Close()
2722
2723	if v.BoundingBox != nil {
2724		ok := object.Key("BoundingBox")
2725		if err := awsAwsjson11_serializeDocumentBoundingBox(v.BoundingBox, ok); err != nil {
2726			return err
2727		}
2728	}
2729
2730	return nil
2731}
2732
2733func awsAwsjson11_serializeDocumentRegionsOfInterest(v []types.RegionOfInterest, value smithyjson.Value) error {
2734	array := value.Array()
2735	defer array.Close()
2736
2737	for i := range v {
2738		av := array.Value()
2739		if err := awsAwsjson11_serializeDocumentRegionOfInterest(&v[i], av); err != nil {
2740			return err
2741		}
2742	}
2743	return nil
2744}
2745
2746func awsAwsjson11_serializeDocumentS3Object(v *types.S3Object, value smithyjson.Value) error {
2747	object := value.Object()
2748	defer object.Close()
2749
2750	if v.Bucket != nil {
2751		ok := object.Key("Bucket")
2752		ok.String(*v.Bucket)
2753	}
2754
2755	if v.Name != nil {
2756		ok := object.Key("Name")
2757		ok.String(*v.Name)
2758	}
2759
2760	if v.Version != nil {
2761		ok := object.Key("Version")
2762		ok.String(*v.Version)
2763	}
2764
2765	return nil
2766}
2767
2768func awsAwsjson11_serializeDocumentSegmentTypes(v []types.SegmentType, value smithyjson.Value) error {
2769	array := value.Array()
2770	defer array.Close()
2771
2772	for i := range v {
2773		av := array.Value()
2774		av.String(string(v[i]))
2775	}
2776	return nil
2777}
2778
2779func awsAwsjson11_serializeDocumentStartSegmentDetectionFilters(v *types.StartSegmentDetectionFilters, value smithyjson.Value) error {
2780	object := value.Object()
2781	defer object.Close()
2782
2783	if v.ShotFilter != nil {
2784		ok := object.Key("ShotFilter")
2785		if err := awsAwsjson11_serializeDocumentStartShotDetectionFilter(v.ShotFilter, ok); err != nil {
2786			return err
2787		}
2788	}
2789
2790	if v.TechnicalCueFilter != nil {
2791		ok := object.Key("TechnicalCueFilter")
2792		if err := awsAwsjson11_serializeDocumentStartTechnicalCueDetectionFilter(v.TechnicalCueFilter, ok); err != nil {
2793			return err
2794		}
2795	}
2796
2797	return nil
2798}
2799
2800func awsAwsjson11_serializeDocumentStartShotDetectionFilter(v *types.StartShotDetectionFilter, value smithyjson.Value) error {
2801	object := value.Object()
2802	defer object.Close()
2803
2804	if v.MinSegmentConfidence != nil {
2805		ok := object.Key("MinSegmentConfidence")
2806		ok.Float(*v.MinSegmentConfidence)
2807	}
2808
2809	return nil
2810}
2811
2812func awsAwsjson11_serializeDocumentStartTechnicalCueDetectionFilter(v *types.StartTechnicalCueDetectionFilter, value smithyjson.Value) error {
2813	object := value.Object()
2814	defer object.Close()
2815
2816	if v.MinSegmentConfidence != nil {
2817		ok := object.Key("MinSegmentConfidence")
2818		ok.Float(*v.MinSegmentConfidence)
2819	}
2820
2821	return nil
2822}
2823
2824func awsAwsjson11_serializeDocumentStartTextDetectionFilters(v *types.StartTextDetectionFilters, value smithyjson.Value) error {
2825	object := value.Object()
2826	defer object.Close()
2827
2828	if v.RegionsOfInterest != nil {
2829		ok := object.Key("RegionsOfInterest")
2830		if err := awsAwsjson11_serializeDocumentRegionsOfInterest(v.RegionsOfInterest, ok); err != nil {
2831			return err
2832		}
2833	}
2834
2835	if v.WordFilter != nil {
2836		ok := object.Key("WordFilter")
2837		if err := awsAwsjson11_serializeDocumentDetectionFilter(v.WordFilter, ok); err != nil {
2838			return err
2839		}
2840	}
2841
2842	return nil
2843}
2844
2845func awsAwsjson11_serializeDocumentStreamProcessorInput(v *types.StreamProcessorInput, value smithyjson.Value) error {
2846	object := value.Object()
2847	defer object.Close()
2848
2849	if v.KinesisVideoStream != nil {
2850		ok := object.Key("KinesisVideoStream")
2851		if err := awsAwsjson11_serializeDocumentKinesisVideoStream(v.KinesisVideoStream, ok); err != nil {
2852			return err
2853		}
2854	}
2855
2856	return nil
2857}
2858
2859func awsAwsjson11_serializeDocumentStreamProcessorOutput(v *types.StreamProcessorOutput, value smithyjson.Value) error {
2860	object := value.Object()
2861	defer object.Close()
2862
2863	if v.KinesisDataStream != nil {
2864		ok := object.Key("KinesisDataStream")
2865		if err := awsAwsjson11_serializeDocumentKinesisDataStream(v.KinesisDataStream, ok); err != nil {
2866			return err
2867		}
2868	}
2869
2870	return nil
2871}
2872
2873func awsAwsjson11_serializeDocumentStreamProcessorSettings(v *types.StreamProcessorSettings, value smithyjson.Value) error {
2874	object := value.Object()
2875	defer object.Close()
2876
2877	if v.FaceSearch != nil {
2878		ok := object.Key("FaceSearch")
2879		if err := awsAwsjson11_serializeDocumentFaceSearchSettings(v.FaceSearch, ok); err != nil {
2880			return err
2881		}
2882	}
2883
2884	return nil
2885}
2886
2887func awsAwsjson11_serializeDocumentTagKeyList(v []string, value smithyjson.Value) error {
2888	array := value.Array()
2889	defer array.Close()
2890
2891	for i := range v {
2892		av := array.Value()
2893		av.String(v[i])
2894	}
2895	return nil
2896}
2897
2898func awsAwsjson11_serializeDocumentTagMap(v map[string]string, value smithyjson.Value) error {
2899	object := value.Object()
2900	defer object.Close()
2901
2902	for key := range v {
2903		om := object.Key(key)
2904		om.String(v[key])
2905	}
2906	return nil
2907}
2908
2909func awsAwsjson11_serializeDocumentTestingData(v *types.TestingData, value smithyjson.Value) error {
2910	object := value.Object()
2911	defer object.Close()
2912
2913	if v.Assets != nil {
2914		ok := object.Key("Assets")
2915		if err := awsAwsjson11_serializeDocumentAssets(v.Assets, ok); err != nil {
2916			return err
2917		}
2918	}
2919
2920	if v.AutoCreate {
2921		ok := object.Key("AutoCreate")
2922		ok.Boolean(v.AutoCreate)
2923	}
2924
2925	return nil
2926}
2927
2928func awsAwsjson11_serializeDocumentTrainingData(v *types.TrainingData, value smithyjson.Value) error {
2929	object := value.Object()
2930	defer object.Close()
2931
2932	if v.Assets != nil {
2933		ok := object.Key("Assets")
2934		if err := awsAwsjson11_serializeDocumentAssets(v.Assets, ok); err != nil {
2935			return err
2936		}
2937	}
2938
2939	return nil
2940}
2941
2942func awsAwsjson11_serializeDocumentVersionNames(v []string, value smithyjson.Value) error {
2943	array := value.Array()
2944	defer array.Close()
2945
2946	for i := range v {
2947		av := array.Value()
2948		av.String(v[i])
2949	}
2950	return nil
2951}
2952
2953func awsAwsjson11_serializeDocumentVideo(v *types.Video, value smithyjson.Value) error {
2954	object := value.Object()
2955	defer object.Close()
2956
2957	if v.S3Object != nil {
2958		ok := object.Key("S3Object")
2959		if err := awsAwsjson11_serializeDocumentS3Object(v.S3Object, ok); err != nil {
2960			return err
2961		}
2962	}
2963
2964	return nil
2965}
2966
2967func awsAwsjson11_serializeOpDocumentCompareFacesInput(v *CompareFacesInput, value smithyjson.Value) error {
2968	object := value.Object()
2969	defer object.Close()
2970
2971	if len(v.QualityFilter) > 0 {
2972		ok := object.Key("QualityFilter")
2973		ok.String(string(v.QualityFilter))
2974	}
2975
2976	if v.SimilarityThreshold != nil {
2977		ok := object.Key("SimilarityThreshold")
2978		ok.Float(*v.SimilarityThreshold)
2979	}
2980
2981	if v.SourceImage != nil {
2982		ok := object.Key("SourceImage")
2983		if err := awsAwsjson11_serializeDocumentImage(v.SourceImage, ok); err != nil {
2984			return err
2985		}
2986	}
2987
2988	if v.TargetImage != nil {
2989		ok := object.Key("TargetImage")
2990		if err := awsAwsjson11_serializeDocumentImage(v.TargetImage, ok); err != nil {
2991			return err
2992		}
2993	}
2994
2995	return nil
2996}
2997
2998func awsAwsjson11_serializeOpDocumentCreateCollectionInput(v *CreateCollectionInput, value smithyjson.Value) error {
2999	object := value.Object()
3000	defer object.Close()
3001
3002	if v.CollectionId != nil {
3003		ok := object.Key("CollectionId")
3004		ok.String(*v.CollectionId)
3005	}
3006
3007	if v.Tags != nil {
3008		ok := object.Key("Tags")
3009		if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
3010			return err
3011		}
3012	}
3013
3014	return nil
3015}
3016
3017func awsAwsjson11_serializeOpDocumentCreateProjectInput(v *CreateProjectInput, value smithyjson.Value) error {
3018	object := value.Object()
3019	defer object.Close()
3020
3021	if v.ProjectName != nil {
3022		ok := object.Key("ProjectName")
3023		ok.String(*v.ProjectName)
3024	}
3025
3026	return nil
3027}
3028
3029func awsAwsjson11_serializeOpDocumentCreateProjectVersionInput(v *CreateProjectVersionInput, value smithyjson.Value) error {
3030	object := value.Object()
3031	defer object.Close()
3032
3033	if v.OutputConfig != nil {
3034		ok := object.Key("OutputConfig")
3035		if err := awsAwsjson11_serializeDocumentOutputConfig(v.OutputConfig, ok); err != nil {
3036			return err
3037		}
3038	}
3039
3040	if v.ProjectArn != nil {
3041		ok := object.Key("ProjectArn")
3042		ok.String(*v.ProjectArn)
3043	}
3044
3045	if v.Tags != nil {
3046		ok := object.Key("Tags")
3047		if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
3048			return err
3049		}
3050	}
3051
3052	if v.TestingData != nil {
3053		ok := object.Key("TestingData")
3054		if err := awsAwsjson11_serializeDocumentTestingData(v.TestingData, ok); err != nil {
3055			return err
3056		}
3057	}
3058
3059	if v.TrainingData != nil {
3060		ok := object.Key("TrainingData")
3061		if err := awsAwsjson11_serializeDocumentTrainingData(v.TrainingData, ok); err != nil {
3062			return err
3063		}
3064	}
3065
3066	if v.VersionName != nil {
3067		ok := object.Key("VersionName")
3068		ok.String(*v.VersionName)
3069	}
3070
3071	return nil
3072}
3073
3074func awsAwsjson11_serializeOpDocumentCreateStreamProcessorInput(v *CreateStreamProcessorInput, value smithyjson.Value) error {
3075	object := value.Object()
3076	defer object.Close()
3077
3078	if v.Input != nil {
3079		ok := object.Key("Input")
3080		if err := awsAwsjson11_serializeDocumentStreamProcessorInput(v.Input, ok); err != nil {
3081			return err
3082		}
3083	}
3084
3085	if v.Name != nil {
3086		ok := object.Key("Name")
3087		ok.String(*v.Name)
3088	}
3089
3090	if v.Output != nil {
3091		ok := object.Key("Output")
3092		if err := awsAwsjson11_serializeDocumentStreamProcessorOutput(v.Output, ok); err != nil {
3093			return err
3094		}
3095	}
3096
3097	if v.RoleArn != nil {
3098		ok := object.Key("RoleArn")
3099		ok.String(*v.RoleArn)
3100	}
3101
3102	if v.Settings != nil {
3103		ok := object.Key("Settings")
3104		if err := awsAwsjson11_serializeDocumentStreamProcessorSettings(v.Settings, ok); err != nil {
3105			return err
3106		}
3107	}
3108
3109	if v.Tags != nil {
3110		ok := object.Key("Tags")
3111		if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
3112			return err
3113		}
3114	}
3115
3116	return nil
3117}
3118
3119func awsAwsjson11_serializeOpDocumentDeleteCollectionInput(v *DeleteCollectionInput, value smithyjson.Value) error {
3120	object := value.Object()
3121	defer object.Close()
3122
3123	if v.CollectionId != nil {
3124		ok := object.Key("CollectionId")
3125		ok.String(*v.CollectionId)
3126	}
3127
3128	return nil
3129}
3130
3131func awsAwsjson11_serializeOpDocumentDeleteFacesInput(v *DeleteFacesInput, value smithyjson.Value) error {
3132	object := value.Object()
3133	defer object.Close()
3134
3135	if v.CollectionId != nil {
3136		ok := object.Key("CollectionId")
3137		ok.String(*v.CollectionId)
3138	}
3139
3140	if v.FaceIds != nil {
3141		ok := object.Key("FaceIds")
3142		if err := awsAwsjson11_serializeDocumentFaceIdList(v.FaceIds, ok); err != nil {
3143			return err
3144		}
3145	}
3146
3147	return nil
3148}
3149
3150func awsAwsjson11_serializeOpDocumentDeleteProjectInput(v *DeleteProjectInput, value smithyjson.Value) error {
3151	object := value.Object()
3152	defer object.Close()
3153
3154	if v.ProjectArn != nil {
3155		ok := object.Key("ProjectArn")
3156		ok.String(*v.ProjectArn)
3157	}
3158
3159	return nil
3160}
3161
3162func awsAwsjson11_serializeOpDocumentDeleteProjectVersionInput(v *DeleteProjectVersionInput, value smithyjson.Value) error {
3163	object := value.Object()
3164	defer object.Close()
3165
3166	if v.ProjectVersionArn != nil {
3167		ok := object.Key("ProjectVersionArn")
3168		ok.String(*v.ProjectVersionArn)
3169	}
3170
3171	return nil
3172}
3173
3174func awsAwsjson11_serializeOpDocumentDeleteStreamProcessorInput(v *DeleteStreamProcessorInput, value smithyjson.Value) error {
3175	object := value.Object()
3176	defer object.Close()
3177
3178	if v.Name != nil {
3179		ok := object.Key("Name")
3180		ok.String(*v.Name)
3181	}
3182
3183	return nil
3184}
3185
3186func awsAwsjson11_serializeOpDocumentDescribeCollectionInput(v *DescribeCollectionInput, value smithyjson.Value) error {
3187	object := value.Object()
3188	defer object.Close()
3189
3190	if v.CollectionId != nil {
3191		ok := object.Key("CollectionId")
3192		ok.String(*v.CollectionId)
3193	}
3194
3195	return nil
3196}
3197
3198func awsAwsjson11_serializeOpDocumentDescribeProjectsInput(v *DescribeProjectsInput, value smithyjson.Value) error {
3199	object := value.Object()
3200	defer object.Close()
3201
3202	if v.MaxResults != nil {
3203		ok := object.Key("MaxResults")
3204		ok.Integer(*v.MaxResults)
3205	}
3206
3207	if v.NextToken != nil {
3208		ok := object.Key("NextToken")
3209		ok.String(*v.NextToken)
3210	}
3211
3212	return nil
3213}
3214
3215func awsAwsjson11_serializeOpDocumentDescribeProjectVersionsInput(v *DescribeProjectVersionsInput, value smithyjson.Value) error {
3216	object := value.Object()
3217	defer object.Close()
3218
3219	if v.MaxResults != nil {
3220		ok := object.Key("MaxResults")
3221		ok.Integer(*v.MaxResults)
3222	}
3223
3224	if v.NextToken != nil {
3225		ok := object.Key("NextToken")
3226		ok.String(*v.NextToken)
3227	}
3228
3229	if v.ProjectArn != nil {
3230		ok := object.Key("ProjectArn")
3231		ok.String(*v.ProjectArn)
3232	}
3233
3234	if v.VersionNames != nil {
3235		ok := object.Key("VersionNames")
3236		if err := awsAwsjson11_serializeDocumentVersionNames(v.VersionNames, ok); err != nil {
3237			return err
3238		}
3239	}
3240
3241	return nil
3242}
3243
3244func awsAwsjson11_serializeOpDocumentDescribeStreamProcessorInput(v *DescribeStreamProcessorInput, value smithyjson.Value) error {
3245	object := value.Object()
3246	defer object.Close()
3247
3248	if v.Name != nil {
3249		ok := object.Key("Name")
3250		ok.String(*v.Name)
3251	}
3252
3253	return nil
3254}
3255
3256func awsAwsjson11_serializeOpDocumentDetectCustomLabelsInput(v *DetectCustomLabelsInput, value smithyjson.Value) error {
3257	object := value.Object()
3258	defer object.Close()
3259
3260	if v.Image != nil {
3261		ok := object.Key("Image")
3262		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3263			return err
3264		}
3265	}
3266
3267	if v.MaxResults != nil {
3268		ok := object.Key("MaxResults")
3269		ok.Integer(*v.MaxResults)
3270	}
3271
3272	if v.MinConfidence != nil {
3273		ok := object.Key("MinConfidence")
3274		ok.Float(*v.MinConfidence)
3275	}
3276
3277	if v.ProjectVersionArn != nil {
3278		ok := object.Key("ProjectVersionArn")
3279		ok.String(*v.ProjectVersionArn)
3280	}
3281
3282	return nil
3283}
3284
3285func awsAwsjson11_serializeOpDocumentDetectFacesInput(v *DetectFacesInput, value smithyjson.Value) error {
3286	object := value.Object()
3287	defer object.Close()
3288
3289	if v.Attributes != nil {
3290		ok := object.Key("Attributes")
3291		if err := awsAwsjson11_serializeDocumentAttributes(v.Attributes, ok); err != nil {
3292			return err
3293		}
3294	}
3295
3296	if v.Image != nil {
3297		ok := object.Key("Image")
3298		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3299			return err
3300		}
3301	}
3302
3303	return nil
3304}
3305
3306func awsAwsjson11_serializeOpDocumentDetectLabelsInput(v *DetectLabelsInput, value smithyjson.Value) error {
3307	object := value.Object()
3308	defer object.Close()
3309
3310	if v.Image != nil {
3311		ok := object.Key("Image")
3312		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3313			return err
3314		}
3315	}
3316
3317	if v.MaxLabels != nil {
3318		ok := object.Key("MaxLabels")
3319		ok.Integer(*v.MaxLabels)
3320	}
3321
3322	if v.MinConfidence != nil {
3323		ok := object.Key("MinConfidence")
3324		ok.Float(*v.MinConfidence)
3325	}
3326
3327	return nil
3328}
3329
3330func awsAwsjson11_serializeOpDocumentDetectModerationLabelsInput(v *DetectModerationLabelsInput, value smithyjson.Value) error {
3331	object := value.Object()
3332	defer object.Close()
3333
3334	if v.HumanLoopConfig != nil {
3335		ok := object.Key("HumanLoopConfig")
3336		if err := awsAwsjson11_serializeDocumentHumanLoopConfig(v.HumanLoopConfig, ok); err != nil {
3337			return err
3338		}
3339	}
3340
3341	if v.Image != nil {
3342		ok := object.Key("Image")
3343		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3344			return err
3345		}
3346	}
3347
3348	if v.MinConfidence != nil {
3349		ok := object.Key("MinConfidence")
3350		ok.Float(*v.MinConfidence)
3351	}
3352
3353	return nil
3354}
3355
3356func awsAwsjson11_serializeOpDocumentDetectProtectiveEquipmentInput(v *DetectProtectiveEquipmentInput, value smithyjson.Value) error {
3357	object := value.Object()
3358	defer object.Close()
3359
3360	if v.Image != nil {
3361		ok := object.Key("Image")
3362		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3363			return err
3364		}
3365	}
3366
3367	if v.SummarizationAttributes != nil {
3368		ok := object.Key("SummarizationAttributes")
3369		if err := awsAwsjson11_serializeDocumentProtectiveEquipmentSummarizationAttributes(v.SummarizationAttributes, ok); err != nil {
3370			return err
3371		}
3372	}
3373
3374	return nil
3375}
3376
3377func awsAwsjson11_serializeOpDocumentDetectTextInput(v *DetectTextInput, value smithyjson.Value) error {
3378	object := value.Object()
3379	defer object.Close()
3380
3381	if v.Filters != nil {
3382		ok := object.Key("Filters")
3383		if err := awsAwsjson11_serializeDocumentDetectTextFilters(v.Filters, ok); err != nil {
3384			return err
3385		}
3386	}
3387
3388	if v.Image != nil {
3389		ok := object.Key("Image")
3390		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3391			return err
3392		}
3393	}
3394
3395	return nil
3396}
3397
3398func awsAwsjson11_serializeOpDocumentGetCelebrityInfoInput(v *GetCelebrityInfoInput, value smithyjson.Value) error {
3399	object := value.Object()
3400	defer object.Close()
3401
3402	if v.Id != nil {
3403		ok := object.Key("Id")
3404		ok.String(*v.Id)
3405	}
3406
3407	return nil
3408}
3409
3410func awsAwsjson11_serializeOpDocumentGetCelebrityRecognitionInput(v *GetCelebrityRecognitionInput, value smithyjson.Value) error {
3411	object := value.Object()
3412	defer object.Close()
3413
3414	if v.JobId != nil {
3415		ok := object.Key("JobId")
3416		ok.String(*v.JobId)
3417	}
3418
3419	if v.MaxResults != nil {
3420		ok := object.Key("MaxResults")
3421		ok.Integer(*v.MaxResults)
3422	}
3423
3424	if v.NextToken != nil {
3425		ok := object.Key("NextToken")
3426		ok.String(*v.NextToken)
3427	}
3428
3429	if len(v.SortBy) > 0 {
3430		ok := object.Key("SortBy")
3431		ok.String(string(v.SortBy))
3432	}
3433
3434	return nil
3435}
3436
3437func awsAwsjson11_serializeOpDocumentGetContentModerationInput(v *GetContentModerationInput, value smithyjson.Value) error {
3438	object := value.Object()
3439	defer object.Close()
3440
3441	if v.JobId != nil {
3442		ok := object.Key("JobId")
3443		ok.String(*v.JobId)
3444	}
3445
3446	if v.MaxResults != nil {
3447		ok := object.Key("MaxResults")
3448		ok.Integer(*v.MaxResults)
3449	}
3450
3451	if v.NextToken != nil {
3452		ok := object.Key("NextToken")
3453		ok.String(*v.NextToken)
3454	}
3455
3456	if len(v.SortBy) > 0 {
3457		ok := object.Key("SortBy")
3458		ok.String(string(v.SortBy))
3459	}
3460
3461	return nil
3462}
3463
3464func awsAwsjson11_serializeOpDocumentGetFaceDetectionInput(v *GetFaceDetectionInput, value smithyjson.Value) error {
3465	object := value.Object()
3466	defer object.Close()
3467
3468	if v.JobId != nil {
3469		ok := object.Key("JobId")
3470		ok.String(*v.JobId)
3471	}
3472
3473	if v.MaxResults != nil {
3474		ok := object.Key("MaxResults")
3475		ok.Integer(*v.MaxResults)
3476	}
3477
3478	if v.NextToken != nil {
3479		ok := object.Key("NextToken")
3480		ok.String(*v.NextToken)
3481	}
3482
3483	return nil
3484}
3485
3486func awsAwsjson11_serializeOpDocumentGetFaceSearchInput(v *GetFaceSearchInput, value smithyjson.Value) error {
3487	object := value.Object()
3488	defer object.Close()
3489
3490	if v.JobId != nil {
3491		ok := object.Key("JobId")
3492		ok.String(*v.JobId)
3493	}
3494
3495	if v.MaxResults != nil {
3496		ok := object.Key("MaxResults")
3497		ok.Integer(*v.MaxResults)
3498	}
3499
3500	if v.NextToken != nil {
3501		ok := object.Key("NextToken")
3502		ok.String(*v.NextToken)
3503	}
3504
3505	if len(v.SortBy) > 0 {
3506		ok := object.Key("SortBy")
3507		ok.String(string(v.SortBy))
3508	}
3509
3510	return nil
3511}
3512
3513func awsAwsjson11_serializeOpDocumentGetLabelDetectionInput(v *GetLabelDetectionInput, value smithyjson.Value) error {
3514	object := value.Object()
3515	defer object.Close()
3516
3517	if v.JobId != nil {
3518		ok := object.Key("JobId")
3519		ok.String(*v.JobId)
3520	}
3521
3522	if v.MaxResults != nil {
3523		ok := object.Key("MaxResults")
3524		ok.Integer(*v.MaxResults)
3525	}
3526
3527	if v.NextToken != nil {
3528		ok := object.Key("NextToken")
3529		ok.String(*v.NextToken)
3530	}
3531
3532	if len(v.SortBy) > 0 {
3533		ok := object.Key("SortBy")
3534		ok.String(string(v.SortBy))
3535	}
3536
3537	return nil
3538}
3539
3540func awsAwsjson11_serializeOpDocumentGetPersonTrackingInput(v *GetPersonTrackingInput, value smithyjson.Value) error {
3541	object := value.Object()
3542	defer object.Close()
3543
3544	if v.JobId != nil {
3545		ok := object.Key("JobId")
3546		ok.String(*v.JobId)
3547	}
3548
3549	if v.MaxResults != nil {
3550		ok := object.Key("MaxResults")
3551		ok.Integer(*v.MaxResults)
3552	}
3553
3554	if v.NextToken != nil {
3555		ok := object.Key("NextToken")
3556		ok.String(*v.NextToken)
3557	}
3558
3559	if len(v.SortBy) > 0 {
3560		ok := object.Key("SortBy")
3561		ok.String(string(v.SortBy))
3562	}
3563
3564	return nil
3565}
3566
3567func awsAwsjson11_serializeOpDocumentGetSegmentDetectionInput(v *GetSegmentDetectionInput, value smithyjson.Value) error {
3568	object := value.Object()
3569	defer object.Close()
3570
3571	if v.JobId != nil {
3572		ok := object.Key("JobId")
3573		ok.String(*v.JobId)
3574	}
3575
3576	if v.MaxResults != nil {
3577		ok := object.Key("MaxResults")
3578		ok.Integer(*v.MaxResults)
3579	}
3580
3581	if v.NextToken != nil {
3582		ok := object.Key("NextToken")
3583		ok.String(*v.NextToken)
3584	}
3585
3586	return nil
3587}
3588
3589func awsAwsjson11_serializeOpDocumentGetTextDetectionInput(v *GetTextDetectionInput, value smithyjson.Value) error {
3590	object := value.Object()
3591	defer object.Close()
3592
3593	if v.JobId != nil {
3594		ok := object.Key("JobId")
3595		ok.String(*v.JobId)
3596	}
3597
3598	if v.MaxResults != nil {
3599		ok := object.Key("MaxResults")
3600		ok.Integer(*v.MaxResults)
3601	}
3602
3603	if v.NextToken != nil {
3604		ok := object.Key("NextToken")
3605		ok.String(*v.NextToken)
3606	}
3607
3608	return nil
3609}
3610
3611func awsAwsjson11_serializeOpDocumentIndexFacesInput(v *IndexFacesInput, value smithyjson.Value) error {
3612	object := value.Object()
3613	defer object.Close()
3614
3615	if v.CollectionId != nil {
3616		ok := object.Key("CollectionId")
3617		ok.String(*v.CollectionId)
3618	}
3619
3620	if v.DetectionAttributes != nil {
3621		ok := object.Key("DetectionAttributes")
3622		if err := awsAwsjson11_serializeDocumentAttributes(v.DetectionAttributes, ok); err != nil {
3623			return err
3624		}
3625	}
3626
3627	if v.ExternalImageId != nil {
3628		ok := object.Key("ExternalImageId")
3629		ok.String(*v.ExternalImageId)
3630	}
3631
3632	if v.Image != nil {
3633		ok := object.Key("Image")
3634		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3635			return err
3636		}
3637	}
3638
3639	if v.MaxFaces != nil {
3640		ok := object.Key("MaxFaces")
3641		ok.Integer(*v.MaxFaces)
3642	}
3643
3644	if len(v.QualityFilter) > 0 {
3645		ok := object.Key("QualityFilter")
3646		ok.String(string(v.QualityFilter))
3647	}
3648
3649	return nil
3650}
3651
3652func awsAwsjson11_serializeOpDocumentListCollectionsInput(v *ListCollectionsInput, value smithyjson.Value) error {
3653	object := value.Object()
3654	defer object.Close()
3655
3656	if v.MaxResults != nil {
3657		ok := object.Key("MaxResults")
3658		ok.Integer(*v.MaxResults)
3659	}
3660
3661	if v.NextToken != nil {
3662		ok := object.Key("NextToken")
3663		ok.String(*v.NextToken)
3664	}
3665
3666	return nil
3667}
3668
3669func awsAwsjson11_serializeOpDocumentListFacesInput(v *ListFacesInput, value smithyjson.Value) error {
3670	object := value.Object()
3671	defer object.Close()
3672
3673	if v.CollectionId != nil {
3674		ok := object.Key("CollectionId")
3675		ok.String(*v.CollectionId)
3676	}
3677
3678	if v.MaxResults != nil {
3679		ok := object.Key("MaxResults")
3680		ok.Integer(*v.MaxResults)
3681	}
3682
3683	if v.NextToken != nil {
3684		ok := object.Key("NextToken")
3685		ok.String(*v.NextToken)
3686	}
3687
3688	return nil
3689}
3690
3691func awsAwsjson11_serializeOpDocumentListStreamProcessorsInput(v *ListStreamProcessorsInput, value smithyjson.Value) error {
3692	object := value.Object()
3693	defer object.Close()
3694
3695	if v.MaxResults != nil {
3696		ok := object.Key("MaxResults")
3697		ok.Integer(*v.MaxResults)
3698	}
3699
3700	if v.NextToken != nil {
3701		ok := object.Key("NextToken")
3702		ok.String(*v.NextToken)
3703	}
3704
3705	return nil
3706}
3707
3708func awsAwsjson11_serializeOpDocumentListTagsForResourceInput(v *ListTagsForResourceInput, value smithyjson.Value) error {
3709	object := value.Object()
3710	defer object.Close()
3711
3712	if v.ResourceArn != nil {
3713		ok := object.Key("ResourceArn")
3714		ok.String(*v.ResourceArn)
3715	}
3716
3717	return nil
3718}
3719
3720func awsAwsjson11_serializeOpDocumentRecognizeCelebritiesInput(v *RecognizeCelebritiesInput, value smithyjson.Value) error {
3721	object := value.Object()
3722	defer object.Close()
3723
3724	if v.Image != nil {
3725		ok := object.Key("Image")
3726		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3727			return err
3728		}
3729	}
3730
3731	return nil
3732}
3733
3734func awsAwsjson11_serializeOpDocumentSearchFacesByImageInput(v *SearchFacesByImageInput, value smithyjson.Value) error {
3735	object := value.Object()
3736	defer object.Close()
3737
3738	if v.CollectionId != nil {
3739		ok := object.Key("CollectionId")
3740		ok.String(*v.CollectionId)
3741	}
3742
3743	if v.FaceMatchThreshold != nil {
3744		ok := object.Key("FaceMatchThreshold")
3745		ok.Float(*v.FaceMatchThreshold)
3746	}
3747
3748	if v.Image != nil {
3749		ok := object.Key("Image")
3750		if err := awsAwsjson11_serializeDocumentImage(v.Image, ok); err != nil {
3751			return err
3752		}
3753	}
3754
3755	if v.MaxFaces != nil {
3756		ok := object.Key("MaxFaces")
3757		ok.Integer(*v.MaxFaces)
3758	}
3759
3760	if len(v.QualityFilter) > 0 {
3761		ok := object.Key("QualityFilter")
3762		ok.String(string(v.QualityFilter))
3763	}
3764
3765	return nil
3766}
3767
3768func awsAwsjson11_serializeOpDocumentSearchFacesInput(v *SearchFacesInput, value smithyjson.Value) error {
3769	object := value.Object()
3770	defer object.Close()
3771
3772	if v.CollectionId != nil {
3773		ok := object.Key("CollectionId")
3774		ok.String(*v.CollectionId)
3775	}
3776
3777	if v.FaceId != nil {
3778		ok := object.Key("FaceId")
3779		ok.String(*v.FaceId)
3780	}
3781
3782	if v.FaceMatchThreshold != nil {
3783		ok := object.Key("FaceMatchThreshold")
3784		ok.Float(*v.FaceMatchThreshold)
3785	}
3786
3787	if v.MaxFaces != nil {
3788		ok := object.Key("MaxFaces")
3789		ok.Integer(*v.MaxFaces)
3790	}
3791
3792	return nil
3793}
3794
3795func awsAwsjson11_serializeOpDocumentStartCelebrityRecognitionInput(v *StartCelebrityRecognitionInput, value smithyjson.Value) error {
3796	object := value.Object()
3797	defer object.Close()
3798
3799	if v.ClientRequestToken != nil {
3800		ok := object.Key("ClientRequestToken")
3801		ok.String(*v.ClientRequestToken)
3802	}
3803
3804	if v.JobTag != nil {
3805		ok := object.Key("JobTag")
3806		ok.String(*v.JobTag)
3807	}
3808
3809	if v.NotificationChannel != nil {
3810		ok := object.Key("NotificationChannel")
3811		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3812			return err
3813		}
3814	}
3815
3816	if v.Video != nil {
3817		ok := object.Key("Video")
3818		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3819			return err
3820		}
3821	}
3822
3823	return nil
3824}
3825
3826func awsAwsjson11_serializeOpDocumentStartContentModerationInput(v *StartContentModerationInput, value smithyjson.Value) error {
3827	object := value.Object()
3828	defer object.Close()
3829
3830	if v.ClientRequestToken != nil {
3831		ok := object.Key("ClientRequestToken")
3832		ok.String(*v.ClientRequestToken)
3833	}
3834
3835	if v.JobTag != nil {
3836		ok := object.Key("JobTag")
3837		ok.String(*v.JobTag)
3838	}
3839
3840	if v.MinConfidence != nil {
3841		ok := object.Key("MinConfidence")
3842		ok.Float(*v.MinConfidence)
3843	}
3844
3845	if v.NotificationChannel != nil {
3846		ok := object.Key("NotificationChannel")
3847		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3848			return err
3849		}
3850	}
3851
3852	if v.Video != nil {
3853		ok := object.Key("Video")
3854		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3855			return err
3856		}
3857	}
3858
3859	return nil
3860}
3861
3862func awsAwsjson11_serializeOpDocumentStartFaceDetectionInput(v *StartFaceDetectionInput, value smithyjson.Value) error {
3863	object := value.Object()
3864	defer object.Close()
3865
3866	if v.ClientRequestToken != nil {
3867		ok := object.Key("ClientRequestToken")
3868		ok.String(*v.ClientRequestToken)
3869	}
3870
3871	if len(v.FaceAttributes) > 0 {
3872		ok := object.Key("FaceAttributes")
3873		ok.String(string(v.FaceAttributes))
3874	}
3875
3876	if v.JobTag != nil {
3877		ok := object.Key("JobTag")
3878		ok.String(*v.JobTag)
3879	}
3880
3881	if v.NotificationChannel != nil {
3882		ok := object.Key("NotificationChannel")
3883		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3884			return err
3885		}
3886	}
3887
3888	if v.Video != nil {
3889		ok := object.Key("Video")
3890		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3891			return err
3892		}
3893	}
3894
3895	return nil
3896}
3897
3898func awsAwsjson11_serializeOpDocumentStartFaceSearchInput(v *StartFaceSearchInput, value smithyjson.Value) error {
3899	object := value.Object()
3900	defer object.Close()
3901
3902	if v.ClientRequestToken != nil {
3903		ok := object.Key("ClientRequestToken")
3904		ok.String(*v.ClientRequestToken)
3905	}
3906
3907	if v.CollectionId != nil {
3908		ok := object.Key("CollectionId")
3909		ok.String(*v.CollectionId)
3910	}
3911
3912	if v.FaceMatchThreshold != nil {
3913		ok := object.Key("FaceMatchThreshold")
3914		ok.Float(*v.FaceMatchThreshold)
3915	}
3916
3917	if v.JobTag != nil {
3918		ok := object.Key("JobTag")
3919		ok.String(*v.JobTag)
3920	}
3921
3922	if v.NotificationChannel != nil {
3923		ok := object.Key("NotificationChannel")
3924		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3925			return err
3926		}
3927	}
3928
3929	if v.Video != nil {
3930		ok := object.Key("Video")
3931		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3932			return err
3933		}
3934	}
3935
3936	return nil
3937}
3938
3939func awsAwsjson11_serializeOpDocumentStartLabelDetectionInput(v *StartLabelDetectionInput, value smithyjson.Value) error {
3940	object := value.Object()
3941	defer object.Close()
3942
3943	if v.ClientRequestToken != nil {
3944		ok := object.Key("ClientRequestToken")
3945		ok.String(*v.ClientRequestToken)
3946	}
3947
3948	if v.JobTag != nil {
3949		ok := object.Key("JobTag")
3950		ok.String(*v.JobTag)
3951	}
3952
3953	if v.MinConfidence != nil {
3954		ok := object.Key("MinConfidence")
3955		ok.Float(*v.MinConfidence)
3956	}
3957
3958	if v.NotificationChannel != nil {
3959		ok := object.Key("NotificationChannel")
3960		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3961			return err
3962		}
3963	}
3964
3965	if v.Video != nil {
3966		ok := object.Key("Video")
3967		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3968			return err
3969		}
3970	}
3971
3972	return nil
3973}
3974
3975func awsAwsjson11_serializeOpDocumentStartPersonTrackingInput(v *StartPersonTrackingInput, value smithyjson.Value) error {
3976	object := value.Object()
3977	defer object.Close()
3978
3979	if v.ClientRequestToken != nil {
3980		ok := object.Key("ClientRequestToken")
3981		ok.String(*v.ClientRequestToken)
3982	}
3983
3984	if v.JobTag != nil {
3985		ok := object.Key("JobTag")
3986		ok.String(*v.JobTag)
3987	}
3988
3989	if v.NotificationChannel != nil {
3990		ok := object.Key("NotificationChannel")
3991		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
3992			return err
3993		}
3994	}
3995
3996	if v.Video != nil {
3997		ok := object.Key("Video")
3998		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
3999			return err
4000		}
4001	}
4002
4003	return nil
4004}
4005
4006func awsAwsjson11_serializeOpDocumentStartProjectVersionInput(v *StartProjectVersionInput, value smithyjson.Value) error {
4007	object := value.Object()
4008	defer object.Close()
4009
4010	if v.MinInferenceUnits != nil {
4011		ok := object.Key("MinInferenceUnits")
4012		ok.Integer(*v.MinInferenceUnits)
4013	}
4014
4015	if v.ProjectVersionArn != nil {
4016		ok := object.Key("ProjectVersionArn")
4017		ok.String(*v.ProjectVersionArn)
4018	}
4019
4020	return nil
4021}
4022
4023func awsAwsjson11_serializeOpDocumentStartSegmentDetectionInput(v *StartSegmentDetectionInput, value smithyjson.Value) error {
4024	object := value.Object()
4025	defer object.Close()
4026
4027	if v.ClientRequestToken != nil {
4028		ok := object.Key("ClientRequestToken")
4029		ok.String(*v.ClientRequestToken)
4030	}
4031
4032	if v.Filters != nil {
4033		ok := object.Key("Filters")
4034		if err := awsAwsjson11_serializeDocumentStartSegmentDetectionFilters(v.Filters, ok); err != nil {
4035			return err
4036		}
4037	}
4038
4039	if v.JobTag != nil {
4040		ok := object.Key("JobTag")
4041		ok.String(*v.JobTag)
4042	}
4043
4044	if v.NotificationChannel != nil {
4045		ok := object.Key("NotificationChannel")
4046		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
4047			return err
4048		}
4049	}
4050
4051	if v.SegmentTypes != nil {
4052		ok := object.Key("SegmentTypes")
4053		if err := awsAwsjson11_serializeDocumentSegmentTypes(v.SegmentTypes, ok); err != nil {
4054			return err
4055		}
4056	}
4057
4058	if v.Video != nil {
4059		ok := object.Key("Video")
4060		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
4061			return err
4062		}
4063	}
4064
4065	return nil
4066}
4067
4068func awsAwsjson11_serializeOpDocumentStartStreamProcessorInput(v *StartStreamProcessorInput, value smithyjson.Value) error {
4069	object := value.Object()
4070	defer object.Close()
4071
4072	if v.Name != nil {
4073		ok := object.Key("Name")
4074		ok.String(*v.Name)
4075	}
4076
4077	return nil
4078}
4079
4080func awsAwsjson11_serializeOpDocumentStartTextDetectionInput(v *StartTextDetectionInput, value smithyjson.Value) error {
4081	object := value.Object()
4082	defer object.Close()
4083
4084	if v.ClientRequestToken != nil {
4085		ok := object.Key("ClientRequestToken")
4086		ok.String(*v.ClientRequestToken)
4087	}
4088
4089	if v.Filters != nil {
4090		ok := object.Key("Filters")
4091		if err := awsAwsjson11_serializeDocumentStartTextDetectionFilters(v.Filters, ok); err != nil {
4092			return err
4093		}
4094	}
4095
4096	if v.JobTag != nil {
4097		ok := object.Key("JobTag")
4098		ok.String(*v.JobTag)
4099	}
4100
4101	if v.NotificationChannel != nil {
4102		ok := object.Key("NotificationChannel")
4103		if err := awsAwsjson11_serializeDocumentNotificationChannel(v.NotificationChannel, ok); err != nil {
4104			return err
4105		}
4106	}
4107
4108	if v.Video != nil {
4109		ok := object.Key("Video")
4110		if err := awsAwsjson11_serializeDocumentVideo(v.Video, ok); err != nil {
4111			return err
4112		}
4113	}
4114
4115	return nil
4116}
4117
4118func awsAwsjson11_serializeOpDocumentStopProjectVersionInput(v *StopProjectVersionInput, value smithyjson.Value) error {
4119	object := value.Object()
4120	defer object.Close()
4121
4122	if v.ProjectVersionArn != nil {
4123		ok := object.Key("ProjectVersionArn")
4124		ok.String(*v.ProjectVersionArn)
4125	}
4126
4127	return nil
4128}
4129
4130func awsAwsjson11_serializeOpDocumentStopStreamProcessorInput(v *StopStreamProcessorInput, value smithyjson.Value) error {
4131	object := value.Object()
4132	defer object.Close()
4133
4134	if v.Name != nil {
4135		ok := object.Key("Name")
4136		ok.String(*v.Name)
4137	}
4138
4139	return nil
4140}
4141
4142func awsAwsjson11_serializeOpDocumentTagResourceInput(v *TagResourceInput, value smithyjson.Value) error {
4143	object := value.Object()
4144	defer object.Close()
4145
4146	if v.ResourceArn != nil {
4147		ok := object.Key("ResourceArn")
4148		ok.String(*v.ResourceArn)
4149	}
4150
4151	if v.Tags != nil {
4152		ok := object.Key("Tags")
4153		if err := awsAwsjson11_serializeDocumentTagMap(v.Tags, ok); err != nil {
4154			return err
4155		}
4156	}
4157
4158	return nil
4159}
4160
4161func awsAwsjson11_serializeOpDocumentUntagResourceInput(v *UntagResourceInput, value smithyjson.Value) error {
4162	object := value.Object()
4163	defer object.Close()
4164
4165	if v.ResourceArn != nil {
4166		ok := object.Key("ResourceArn")
4167		ok.String(*v.ResourceArn)
4168	}
4169
4170	if v.TagKeys != nil {
4171		ok := object.Key("TagKeys")
4172		if err := awsAwsjson11_serializeDocumentTagKeyList(v.TagKeys, ok); err != nil {
4173			return err
4174		}
4175	}
4176
4177	return nil
4178}
4179