1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package alexaforbusiness
4
5import (
6	"bytes"
7	"context"
8	"encoding/json"
9	"fmt"
10	"github.com/aws/aws-sdk-go-v2/aws/protocol/restjson"
11	"github.com/aws/aws-sdk-go-v2/service/alexaforbusiness/types"
12	smithy "github.com/aws/smithy-go"
13	smithyio "github.com/aws/smithy-go/io"
14	"github.com/aws/smithy-go/middleware"
15	"github.com/aws/smithy-go/ptr"
16	smithytime "github.com/aws/smithy-go/time"
17	smithyhttp "github.com/aws/smithy-go/transport/http"
18	"io"
19	"strings"
20)
21
22type awsAwsjson11_deserializeOpApproveSkill struct {
23}
24
25func (*awsAwsjson11_deserializeOpApproveSkill) ID() string {
26	return "OperationDeserializer"
27}
28
29func (m *awsAwsjson11_deserializeOpApproveSkill) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
30	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
31) {
32	out, metadata, err = next.HandleDeserialize(ctx, in)
33	if err != nil {
34		return out, metadata, err
35	}
36
37	response, ok := out.RawResponse.(*smithyhttp.Response)
38	if !ok {
39		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
40	}
41
42	if response.StatusCode < 200 || response.StatusCode >= 300 {
43		return out, metadata, awsAwsjson11_deserializeOpErrorApproveSkill(response, &metadata)
44	}
45	output := &ApproveSkillOutput{}
46	out.Result = output
47
48	var buff [1024]byte
49	ringBuffer := smithyio.NewRingBuffer(buff[:])
50
51	body := io.TeeReader(response.Body, ringBuffer)
52	decoder := json.NewDecoder(body)
53	decoder.UseNumber()
54	var shape interface{}
55	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
56		var snapshot bytes.Buffer
57		io.Copy(&snapshot, ringBuffer)
58		err = &smithy.DeserializationError{
59			Err:      fmt.Errorf("failed to decode response body, %w", err),
60			Snapshot: snapshot.Bytes(),
61		}
62		return out, metadata, err
63	}
64
65	err = awsAwsjson11_deserializeOpDocumentApproveSkillOutput(&output, shape)
66	if err != nil {
67		var snapshot bytes.Buffer
68		io.Copy(&snapshot, ringBuffer)
69		err = &smithy.DeserializationError{
70			Err:      fmt.Errorf("failed to decode response body, %w", err),
71			Snapshot: snapshot.Bytes(),
72		}
73		return out, metadata, err
74	}
75
76	return out, metadata, err
77}
78
79func awsAwsjson11_deserializeOpErrorApproveSkill(response *smithyhttp.Response, metadata *middleware.Metadata) error {
80	var errorBuffer bytes.Buffer
81	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
82		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
83	}
84	errorBody := bytes.NewReader(errorBuffer.Bytes())
85
86	errorCode := "UnknownError"
87	errorMessage := errorCode
88
89	code := response.Header.Get("X-Amzn-ErrorType")
90	if len(code) != 0 {
91		errorCode = restjson.SanitizeErrorCode(code)
92	}
93
94	var buff [1024]byte
95	ringBuffer := smithyio.NewRingBuffer(buff[:])
96
97	body := io.TeeReader(errorBody, ringBuffer)
98	decoder := json.NewDecoder(body)
99	decoder.UseNumber()
100	code, message, err := restjson.GetErrorInfo(decoder)
101	if err != nil {
102		var snapshot bytes.Buffer
103		io.Copy(&snapshot, ringBuffer)
104		err = &smithy.DeserializationError{
105			Err:      fmt.Errorf("failed to decode response body, %w", err),
106			Snapshot: snapshot.Bytes(),
107		}
108		return err
109	}
110
111	errorBody.Seek(0, io.SeekStart)
112	if len(code) != 0 {
113		errorCode = restjson.SanitizeErrorCode(code)
114	}
115	if len(message) != 0 {
116		errorMessage = message
117	}
118
119	switch {
120	case strings.EqualFold("ConcurrentModificationException", errorCode):
121		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
122
123	case strings.EqualFold("LimitExceededException", errorCode):
124		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
125
126	case strings.EqualFold("NotFoundException", errorCode):
127		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
128
129	default:
130		genericError := &smithy.GenericAPIError{
131			Code:    errorCode,
132			Message: errorMessage,
133		}
134		return genericError
135
136	}
137}
138
139type awsAwsjson11_deserializeOpAssociateContactWithAddressBook struct {
140}
141
142func (*awsAwsjson11_deserializeOpAssociateContactWithAddressBook) ID() string {
143	return "OperationDeserializer"
144}
145
146func (m *awsAwsjson11_deserializeOpAssociateContactWithAddressBook) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
147	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
148) {
149	out, metadata, err = next.HandleDeserialize(ctx, in)
150	if err != nil {
151		return out, metadata, err
152	}
153
154	response, ok := out.RawResponse.(*smithyhttp.Response)
155	if !ok {
156		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
157	}
158
159	if response.StatusCode < 200 || response.StatusCode >= 300 {
160		return out, metadata, awsAwsjson11_deserializeOpErrorAssociateContactWithAddressBook(response, &metadata)
161	}
162	output := &AssociateContactWithAddressBookOutput{}
163	out.Result = output
164
165	var buff [1024]byte
166	ringBuffer := smithyio.NewRingBuffer(buff[:])
167
168	body := io.TeeReader(response.Body, ringBuffer)
169	decoder := json.NewDecoder(body)
170	decoder.UseNumber()
171	var shape interface{}
172	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
173		var snapshot bytes.Buffer
174		io.Copy(&snapshot, ringBuffer)
175		err = &smithy.DeserializationError{
176			Err:      fmt.Errorf("failed to decode response body, %w", err),
177			Snapshot: snapshot.Bytes(),
178		}
179		return out, metadata, err
180	}
181
182	err = awsAwsjson11_deserializeOpDocumentAssociateContactWithAddressBookOutput(&output, shape)
183	if err != nil {
184		var snapshot bytes.Buffer
185		io.Copy(&snapshot, ringBuffer)
186		err = &smithy.DeserializationError{
187			Err:      fmt.Errorf("failed to decode response body, %w", err),
188			Snapshot: snapshot.Bytes(),
189		}
190		return out, metadata, err
191	}
192
193	return out, metadata, err
194}
195
196func awsAwsjson11_deserializeOpErrorAssociateContactWithAddressBook(response *smithyhttp.Response, metadata *middleware.Metadata) error {
197	var errorBuffer bytes.Buffer
198	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
199		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
200	}
201	errorBody := bytes.NewReader(errorBuffer.Bytes())
202
203	errorCode := "UnknownError"
204	errorMessage := errorCode
205
206	code := response.Header.Get("X-Amzn-ErrorType")
207	if len(code) != 0 {
208		errorCode = restjson.SanitizeErrorCode(code)
209	}
210
211	var buff [1024]byte
212	ringBuffer := smithyio.NewRingBuffer(buff[:])
213
214	body := io.TeeReader(errorBody, ringBuffer)
215	decoder := json.NewDecoder(body)
216	decoder.UseNumber()
217	code, message, err := restjson.GetErrorInfo(decoder)
218	if err != nil {
219		var snapshot bytes.Buffer
220		io.Copy(&snapshot, ringBuffer)
221		err = &smithy.DeserializationError{
222			Err:      fmt.Errorf("failed to decode response body, %w", err),
223			Snapshot: snapshot.Bytes(),
224		}
225		return err
226	}
227
228	errorBody.Seek(0, io.SeekStart)
229	if len(code) != 0 {
230		errorCode = restjson.SanitizeErrorCode(code)
231	}
232	if len(message) != 0 {
233		errorMessage = message
234	}
235
236	switch {
237	case strings.EqualFold("LimitExceededException", errorCode):
238		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
239
240	default:
241		genericError := &smithy.GenericAPIError{
242			Code:    errorCode,
243			Message: errorMessage,
244		}
245		return genericError
246
247	}
248}
249
250type awsAwsjson11_deserializeOpAssociateDeviceWithNetworkProfile struct {
251}
252
253func (*awsAwsjson11_deserializeOpAssociateDeviceWithNetworkProfile) ID() string {
254	return "OperationDeserializer"
255}
256
257func (m *awsAwsjson11_deserializeOpAssociateDeviceWithNetworkProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
258	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
259) {
260	out, metadata, err = next.HandleDeserialize(ctx, in)
261	if err != nil {
262		return out, metadata, err
263	}
264
265	response, ok := out.RawResponse.(*smithyhttp.Response)
266	if !ok {
267		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
268	}
269
270	if response.StatusCode < 200 || response.StatusCode >= 300 {
271		return out, metadata, awsAwsjson11_deserializeOpErrorAssociateDeviceWithNetworkProfile(response, &metadata)
272	}
273	output := &AssociateDeviceWithNetworkProfileOutput{}
274	out.Result = output
275
276	var buff [1024]byte
277	ringBuffer := smithyio.NewRingBuffer(buff[:])
278
279	body := io.TeeReader(response.Body, ringBuffer)
280	decoder := json.NewDecoder(body)
281	decoder.UseNumber()
282	var shape interface{}
283	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
284		var snapshot bytes.Buffer
285		io.Copy(&snapshot, ringBuffer)
286		err = &smithy.DeserializationError{
287			Err:      fmt.Errorf("failed to decode response body, %w", err),
288			Snapshot: snapshot.Bytes(),
289		}
290		return out, metadata, err
291	}
292
293	err = awsAwsjson11_deserializeOpDocumentAssociateDeviceWithNetworkProfileOutput(&output, shape)
294	if err != nil {
295		var snapshot bytes.Buffer
296		io.Copy(&snapshot, ringBuffer)
297		err = &smithy.DeserializationError{
298			Err:      fmt.Errorf("failed to decode response body, %w", err),
299			Snapshot: snapshot.Bytes(),
300		}
301		return out, metadata, err
302	}
303
304	return out, metadata, err
305}
306
307func awsAwsjson11_deserializeOpErrorAssociateDeviceWithNetworkProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
308	var errorBuffer bytes.Buffer
309	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
310		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
311	}
312	errorBody := bytes.NewReader(errorBuffer.Bytes())
313
314	errorCode := "UnknownError"
315	errorMessage := errorCode
316
317	code := response.Header.Get("X-Amzn-ErrorType")
318	if len(code) != 0 {
319		errorCode = restjson.SanitizeErrorCode(code)
320	}
321
322	var buff [1024]byte
323	ringBuffer := smithyio.NewRingBuffer(buff[:])
324
325	body := io.TeeReader(errorBody, ringBuffer)
326	decoder := json.NewDecoder(body)
327	decoder.UseNumber()
328	code, message, err := restjson.GetErrorInfo(decoder)
329	if err != nil {
330		var snapshot bytes.Buffer
331		io.Copy(&snapshot, ringBuffer)
332		err = &smithy.DeserializationError{
333			Err:      fmt.Errorf("failed to decode response body, %w", err),
334			Snapshot: snapshot.Bytes(),
335		}
336		return err
337	}
338
339	errorBody.Seek(0, io.SeekStart)
340	if len(code) != 0 {
341		errorCode = restjson.SanitizeErrorCode(code)
342	}
343	if len(message) != 0 {
344		errorMessage = message
345	}
346
347	switch {
348	case strings.EqualFold("ConcurrentModificationException", errorCode):
349		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
350
351	case strings.EqualFold("DeviceNotRegisteredException", errorCode):
352		return awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response, errorBody)
353
354	case strings.EqualFold("NotFoundException", errorCode):
355		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
356
357	default:
358		genericError := &smithy.GenericAPIError{
359			Code:    errorCode,
360			Message: errorMessage,
361		}
362		return genericError
363
364	}
365}
366
367type awsAwsjson11_deserializeOpAssociateDeviceWithRoom struct {
368}
369
370func (*awsAwsjson11_deserializeOpAssociateDeviceWithRoom) ID() string {
371	return "OperationDeserializer"
372}
373
374func (m *awsAwsjson11_deserializeOpAssociateDeviceWithRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
375	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
376) {
377	out, metadata, err = next.HandleDeserialize(ctx, in)
378	if err != nil {
379		return out, metadata, err
380	}
381
382	response, ok := out.RawResponse.(*smithyhttp.Response)
383	if !ok {
384		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
385	}
386
387	if response.StatusCode < 200 || response.StatusCode >= 300 {
388		return out, metadata, awsAwsjson11_deserializeOpErrorAssociateDeviceWithRoom(response, &metadata)
389	}
390	output := &AssociateDeviceWithRoomOutput{}
391	out.Result = output
392
393	var buff [1024]byte
394	ringBuffer := smithyio.NewRingBuffer(buff[:])
395
396	body := io.TeeReader(response.Body, ringBuffer)
397	decoder := json.NewDecoder(body)
398	decoder.UseNumber()
399	var shape interface{}
400	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
401		var snapshot bytes.Buffer
402		io.Copy(&snapshot, ringBuffer)
403		err = &smithy.DeserializationError{
404			Err:      fmt.Errorf("failed to decode response body, %w", err),
405			Snapshot: snapshot.Bytes(),
406		}
407		return out, metadata, err
408	}
409
410	err = awsAwsjson11_deserializeOpDocumentAssociateDeviceWithRoomOutput(&output, shape)
411	if err != nil {
412		var snapshot bytes.Buffer
413		io.Copy(&snapshot, ringBuffer)
414		err = &smithy.DeserializationError{
415			Err:      fmt.Errorf("failed to decode response body, %w", err),
416			Snapshot: snapshot.Bytes(),
417		}
418		return out, metadata, err
419	}
420
421	return out, metadata, err
422}
423
424func awsAwsjson11_deserializeOpErrorAssociateDeviceWithRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
425	var errorBuffer bytes.Buffer
426	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
427		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
428	}
429	errorBody := bytes.NewReader(errorBuffer.Bytes())
430
431	errorCode := "UnknownError"
432	errorMessage := errorCode
433
434	code := response.Header.Get("X-Amzn-ErrorType")
435	if len(code) != 0 {
436		errorCode = restjson.SanitizeErrorCode(code)
437	}
438
439	var buff [1024]byte
440	ringBuffer := smithyio.NewRingBuffer(buff[:])
441
442	body := io.TeeReader(errorBody, ringBuffer)
443	decoder := json.NewDecoder(body)
444	decoder.UseNumber()
445	code, message, err := restjson.GetErrorInfo(decoder)
446	if err != nil {
447		var snapshot bytes.Buffer
448		io.Copy(&snapshot, ringBuffer)
449		err = &smithy.DeserializationError{
450			Err:      fmt.Errorf("failed to decode response body, %w", err),
451			Snapshot: snapshot.Bytes(),
452		}
453		return err
454	}
455
456	errorBody.Seek(0, io.SeekStart)
457	if len(code) != 0 {
458		errorCode = restjson.SanitizeErrorCode(code)
459	}
460	if len(message) != 0 {
461		errorMessage = message
462	}
463
464	switch {
465	case strings.EqualFold("ConcurrentModificationException", errorCode):
466		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
467
468	case strings.EqualFold("DeviceNotRegisteredException", errorCode):
469		return awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response, errorBody)
470
471	case strings.EqualFold("LimitExceededException", errorCode):
472		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
473
474	default:
475		genericError := &smithy.GenericAPIError{
476			Code:    errorCode,
477			Message: errorMessage,
478		}
479		return genericError
480
481	}
482}
483
484type awsAwsjson11_deserializeOpAssociateSkillGroupWithRoom struct {
485}
486
487func (*awsAwsjson11_deserializeOpAssociateSkillGroupWithRoom) ID() string {
488	return "OperationDeserializer"
489}
490
491func (m *awsAwsjson11_deserializeOpAssociateSkillGroupWithRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
492	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
493) {
494	out, metadata, err = next.HandleDeserialize(ctx, in)
495	if err != nil {
496		return out, metadata, err
497	}
498
499	response, ok := out.RawResponse.(*smithyhttp.Response)
500	if !ok {
501		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
502	}
503
504	if response.StatusCode < 200 || response.StatusCode >= 300 {
505		return out, metadata, awsAwsjson11_deserializeOpErrorAssociateSkillGroupWithRoom(response, &metadata)
506	}
507	output := &AssociateSkillGroupWithRoomOutput{}
508	out.Result = output
509
510	var buff [1024]byte
511	ringBuffer := smithyio.NewRingBuffer(buff[:])
512
513	body := io.TeeReader(response.Body, ringBuffer)
514	decoder := json.NewDecoder(body)
515	decoder.UseNumber()
516	var shape interface{}
517	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
518		var snapshot bytes.Buffer
519		io.Copy(&snapshot, ringBuffer)
520		err = &smithy.DeserializationError{
521			Err:      fmt.Errorf("failed to decode response body, %w", err),
522			Snapshot: snapshot.Bytes(),
523		}
524		return out, metadata, err
525	}
526
527	err = awsAwsjson11_deserializeOpDocumentAssociateSkillGroupWithRoomOutput(&output, shape)
528	if err != nil {
529		var snapshot bytes.Buffer
530		io.Copy(&snapshot, ringBuffer)
531		err = &smithy.DeserializationError{
532			Err:      fmt.Errorf("failed to decode response body, %w", err),
533			Snapshot: snapshot.Bytes(),
534		}
535		return out, metadata, err
536	}
537
538	return out, metadata, err
539}
540
541func awsAwsjson11_deserializeOpErrorAssociateSkillGroupWithRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
542	var errorBuffer bytes.Buffer
543	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
544		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
545	}
546	errorBody := bytes.NewReader(errorBuffer.Bytes())
547
548	errorCode := "UnknownError"
549	errorMessage := errorCode
550
551	code := response.Header.Get("X-Amzn-ErrorType")
552	if len(code) != 0 {
553		errorCode = restjson.SanitizeErrorCode(code)
554	}
555
556	var buff [1024]byte
557	ringBuffer := smithyio.NewRingBuffer(buff[:])
558
559	body := io.TeeReader(errorBody, ringBuffer)
560	decoder := json.NewDecoder(body)
561	decoder.UseNumber()
562	code, message, err := restjson.GetErrorInfo(decoder)
563	if err != nil {
564		var snapshot bytes.Buffer
565		io.Copy(&snapshot, ringBuffer)
566		err = &smithy.DeserializationError{
567			Err:      fmt.Errorf("failed to decode response body, %w", err),
568			Snapshot: snapshot.Bytes(),
569		}
570		return err
571	}
572
573	errorBody.Seek(0, io.SeekStart)
574	if len(code) != 0 {
575		errorCode = restjson.SanitizeErrorCode(code)
576	}
577	if len(message) != 0 {
578		errorMessage = message
579	}
580
581	switch {
582	case strings.EqualFold("ConcurrentModificationException", errorCode):
583		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
584
585	default:
586		genericError := &smithy.GenericAPIError{
587			Code:    errorCode,
588			Message: errorMessage,
589		}
590		return genericError
591
592	}
593}
594
595type awsAwsjson11_deserializeOpAssociateSkillWithSkillGroup struct {
596}
597
598func (*awsAwsjson11_deserializeOpAssociateSkillWithSkillGroup) ID() string {
599	return "OperationDeserializer"
600}
601
602func (m *awsAwsjson11_deserializeOpAssociateSkillWithSkillGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
603	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
604) {
605	out, metadata, err = next.HandleDeserialize(ctx, in)
606	if err != nil {
607		return out, metadata, err
608	}
609
610	response, ok := out.RawResponse.(*smithyhttp.Response)
611	if !ok {
612		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
613	}
614
615	if response.StatusCode < 200 || response.StatusCode >= 300 {
616		return out, metadata, awsAwsjson11_deserializeOpErrorAssociateSkillWithSkillGroup(response, &metadata)
617	}
618	output := &AssociateSkillWithSkillGroupOutput{}
619	out.Result = output
620
621	var buff [1024]byte
622	ringBuffer := smithyio.NewRingBuffer(buff[:])
623
624	body := io.TeeReader(response.Body, ringBuffer)
625	decoder := json.NewDecoder(body)
626	decoder.UseNumber()
627	var shape interface{}
628	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
629		var snapshot bytes.Buffer
630		io.Copy(&snapshot, ringBuffer)
631		err = &smithy.DeserializationError{
632			Err:      fmt.Errorf("failed to decode response body, %w", err),
633			Snapshot: snapshot.Bytes(),
634		}
635		return out, metadata, err
636	}
637
638	err = awsAwsjson11_deserializeOpDocumentAssociateSkillWithSkillGroupOutput(&output, shape)
639	if err != nil {
640		var snapshot bytes.Buffer
641		io.Copy(&snapshot, ringBuffer)
642		err = &smithy.DeserializationError{
643			Err:      fmt.Errorf("failed to decode response body, %w", err),
644			Snapshot: snapshot.Bytes(),
645		}
646		return out, metadata, err
647	}
648
649	return out, metadata, err
650}
651
652func awsAwsjson11_deserializeOpErrorAssociateSkillWithSkillGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
653	var errorBuffer bytes.Buffer
654	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
655		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
656	}
657	errorBody := bytes.NewReader(errorBuffer.Bytes())
658
659	errorCode := "UnknownError"
660	errorMessage := errorCode
661
662	code := response.Header.Get("X-Amzn-ErrorType")
663	if len(code) != 0 {
664		errorCode = restjson.SanitizeErrorCode(code)
665	}
666
667	var buff [1024]byte
668	ringBuffer := smithyio.NewRingBuffer(buff[:])
669
670	body := io.TeeReader(errorBody, ringBuffer)
671	decoder := json.NewDecoder(body)
672	decoder.UseNumber()
673	code, message, err := restjson.GetErrorInfo(decoder)
674	if err != nil {
675		var snapshot bytes.Buffer
676		io.Copy(&snapshot, ringBuffer)
677		err = &smithy.DeserializationError{
678			Err:      fmt.Errorf("failed to decode response body, %w", err),
679			Snapshot: snapshot.Bytes(),
680		}
681		return err
682	}
683
684	errorBody.Seek(0, io.SeekStart)
685	if len(code) != 0 {
686		errorCode = restjson.SanitizeErrorCode(code)
687	}
688	if len(message) != 0 {
689		errorMessage = message
690	}
691
692	switch {
693	case strings.EqualFold("ConcurrentModificationException", errorCode):
694		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
695
696	case strings.EqualFold("NotFoundException", errorCode):
697		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
698
699	case strings.EqualFold("SkillNotLinkedException", errorCode):
700		return awsAwsjson11_deserializeErrorSkillNotLinkedException(response, errorBody)
701
702	default:
703		genericError := &smithy.GenericAPIError{
704			Code:    errorCode,
705			Message: errorMessage,
706		}
707		return genericError
708
709	}
710}
711
712type awsAwsjson11_deserializeOpAssociateSkillWithUsers struct {
713}
714
715func (*awsAwsjson11_deserializeOpAssociateSkillWithUsers) ID() string {
716	return "OperationDeserializer"
717}
718
719func (m *awsAwsjson11_deserializeOpAssociateSkillWithUsers) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
720	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
721) {
722	out, metadata, err = next.HandleDeserialize(ctx, in)
723	if err != nil {
724		return out, metadata, err
725	}
726
727	response, ok := out.RawResponse.(*smithyhttp.Response)
728	if !ok {
729		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
730	}
731
732	if response.StatusCode < 200 || response.StatusCode >= 300 {
733		return out, metadata, awsAwsjson11_deserializeOpErrorAssociateSkillWithUsers(response, &metadata)
734	}
735	output := &AssociateSkillWithUsersOutput{}
736	out.Result = output
737
738	var buff [1024]byte
739	ringBuffer := smithyio.NewRingBuffer(buff[:])
740
741	body := io.TeeReader(response.Body, ringBuffer)
742	decoder := json.NewDecoder(body)
743	decoder.UseNumber()
744	var shape interface{}
745	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
746		var snapshot bytes.Buffer
747		io.Copy(&snapshot, ringBuffer)
748		err = &smithy.DeserializationError{
749			Err:      fmt.Errorf("failed to decode response body, %w", err),
750			Snapshot: snapshot.Bytes(),
751		}
752		return out, metadata, err
753	}
754
755	err = awsAwsjson11_deserializeOpDocumentAssociateSkillWithUsersOutput(&output, shape)
756	if err != nil {
757		var snapshot bytes.Buffer
758		io.Copy(&snapshot, ringBuffer)
759		err = &smithy.DeserializationError{
760			Err:      fmt.Errorf("failed to decode response body, %w", err),
761			Snapshot: snapshot.Bytes(),
762		}
763		return out, metadata, err
764	}
765
766	return out, metadata, err
767}
768
769func awsAwsjson11_deserializeOpErrorAssociateSkillWithUsers(response *smithyhttp.Response, metadata *middleware.Metadata) error {
770	var errorBuffer bytes.Buffer
771	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
772		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
773	}
774	errorBody := bytes.NewReader(errorBuffer.Bytes())
775
776	errorCode := "UnknownError"
777	errorMessage := errorCode
778
779	code := response.Header.Get("X-Amzn-ErrorType")
780	if len(code) != 0 {
781		errorCode = restjson.SanitizeErrorCode(code)
782	}
783
784	var buff [1024]byte
785	ringBuffer := smithyio.NewRingBuffer(buff[:])
786
787	body := io.TeeReader(errorBody, ringBuffer)
788	decoder := json.NewDecoder(body)
789	decoder.UseNumber()
790	code, message, err := restjson.GetErrorInfo(decoder)
791	if err != nil {
792		var snapshot bytes.Buffer
793		io.Copy(&snapshot, ringBuffer)
794		err = &smithy.DeserializationError{
795			Err:      fmt.Errorf("failed to decode response body, %w", err),
796			Snapshot: snapshot.Bytes(),
797		}
798		return err
799	}
800
801	errorBody.Seek(0, io.SeekStart)
802	if len(code) != 0 {
803		errorCode = restjson.SanitizeErrorCode(code)
804	}
805	if len(message) != 0 {
806		errorMessage = message
807	}
808
809	switch {
810	case strings.EqualFold("ConcurrentModificationException", errorCode):
811		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
812
813	case strings.EqualFold("NotFoundException", errorCode):
814		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
815
816	default:
817		genericError := &smithy.GenericAPIError{
818			Code:    errorCode,
819			Message: errorMessage,
820		}
821		return genericError
822
823	}
824}
825
826type awsAwsjson11_deserializeOpCreateAddressBook struct {
827}
828
829func (*awsAwsjson11_deserializeOpCreateAddressBook) ID() string {
830	return "OperationDeserializer"
831}
832
833func (m *awsAwsjson11_deserializeOpCreateAddressBook) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
834	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
835) {
836	out, metadata, err = next.HandleDeserialize(ctx, in)
837	if err != nil {
838		return out, metadata, err
839	}
840
841	response, ok := out.RawResponse.(*smithyhttp.Response)
842	if !ok {
843		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
844	}
845
846	if response.StatusCode < 200 || response.StatusCode >= 300 {
847		return out, metadata, awsAwsjson11_deserializeOpErrorCreateAddressBook(response, &metadata)
848	}
849	output := &CreateAddressBookOutput{}
850	out.Result = output
851
852	var buff [1024]byte
853	ringBuffer := smithyio.NewRingBuffer(buff[:])
854
855	body := io.TeeReader(response.Body, ringBuffer)
856	decoder := json.NewDecoder(body)
857	decoder.UseNumber()
858	var shape interface{}
859	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
860		var snapshot bytes.Buffer
861		io.Copy(&snapshot, ringBuffer)
862		err = &smithy.DeserializationError{
863			Err:      fmt.Errorf("failed to decode response body, %w", err),
864			Snapshot: snapshot.Bytes(),
865		}
866		return out, metadata, err
867	}
868
869	err = awsAwsjson11_deserializeOpDocumentCreateAddressBookOutput(&output, shape)
870	if err != nil {
871		var snapshot bytes.Buffer
872		io.Copy(&snapshot, ringBuffer)
873		err = &smithy.DeserializationError{
874			Err:      fmt.Errorf("failed to decode response body, %w", err),
875			Snapshot: snapshot.Bytes(),
876		}
877		return out, metadata, err
878	}
879
880	return out, metadata, err
881}
882
883func awsAwsjson11_deserializeOpErrorCreateAddressBook(response *smithyhttp.Response, metadata *middleware.Metadata) error {
884	var errorBuffer bytes.Buffer
885	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
886		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
887	}
888	errorBody := bytes.NewReader(errorBuffer.Bytes())
889
890	errorCode := "UnknownError"
891	errorMessage := errorCode
892
893	code := response.Header.Get("X-Amzn-ErrorType")
894	if len(code) != 0 {
895		errorCode = restjson.SanitizeErrorCode(code)
896	}
897
898	var buff [1024]byte
899	ringBuffer := smithyio.NewRingBuffer(buff[:])
900
901	body := io.TeeReader(errorBody, ringBuffer)
902	decoder := json.NewDecoder(body)
903	decoder.UseNumber()
904	code, message, err := restjson.GetErrorInfo(decoder)
905	if err != nil {
906		var snapshot bytes.Buffer
907		io.Copy(&snapshot, ringBuffer)
908		err = &smithy.DeserializationError{
909			Err:      fmt.Errorf("failed to decode response body, %w", err),
910			Snapshot: snapshot.Bytes(),
911		}
912		return err
913	}
914
915	errorBody.Seek(0, io.SeekStart)
916	if len(code) != 0 {
917		errorCode = restjson.SanitizeErrorCode(code)
918	}
919	if len(message) != 0 {
920		errorMessage = message
921	}
922
923	switch {
924	case strings.EqualFold("AlreadyExistsException", errorCode):
925		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
926
927	case strings.EqualFold("LimitExceededException", errorCode):
928		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
929
930	default:
931		genericError := &smithy.GenericAPIError{
932			Code:    errorCode,
933			Message: errorMessage,
934		}
935		return genericError
936
937	}
938}
939
940type awsAwsjson11_deserializeOpCreateBusinessReportSchedule struct {
941}
942
943func (*awsAwsjson11_deserializeOpCreateBusinessReportSchedule) ID() string {
944	return "OperationDeserializer"
945}
946
947func (m *awsAwsjson11_deserializeOpCreateBusinessReportSchedule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
948	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
949) {
950	out, metadata, err = next.HandleDeserialize(ctx, in)
951	if err != nil {
952		return out, metadata, err
953	}
954
955	response, ok := out.RawResponse.(*smithyhttp.Response)
956	if !ok {
957		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
958	}
959
960	if response.StatusCode < 200 || response.StatusCode >= 300 {
961		return out, metadata, awsAwsjson11_deserializeOpErrorCreateBusinessReportSchedule(response, &metadata)
962	}
963	output := &CreateBusinessReportScheduleOutput{}
964	out.Result = output
965
966	var buff [1024]byte
967	ringBuffer := smithyio.NewRingBuffer(buff[:])
968
969	body := io.TeeReader(response.Body, ringBuffer)
970	decoder := json.NewDecoder(body)
971	decoder.UseNumber()
972	var shape interface{}
973	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
974		var snapshot bytes.Buffer
975		io.Copy(&snapshot, ringBuffer)
976		err = &smithy.DeserializationError{
977			Err:      fmt.Errorf("failed to decode response body, %w", err),
978			Snapshot: snapshot.Bytes(),
979		}
980		return out, metadata, err
981	}
982
983	err = awsAwsjson11_deserializeOpDocumentCreateBusinessReportScheduleOutput(&output, shape)
984	if err != nil {
985		var snapshot bytes.Buffer
986		io.Copy(&snapshot, ringBuffer)
987		err = &smithy.DeserializationError{
988			Err:      fmt.Errorf("failed to decode response body, %w", err),
989			Snapshot: snapshot.Bytes(),
990		}
991		return out, metadata, err
992	}
993
994	return out, metadata, err
995}
996
997func awsAwsjson11_deserializeOpErrorCreateBusinessReportSchedule(response *smithyhttp.Response, metadata *middleware.Metadata) error {
998	var errorBuffer bytes.Buffer
999	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1000		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1001	}
1002	errorBody := bytes.NewReader(errorBuffer.Bytes())
1003
1004	errorCode := "UnknownError"
1005	errorMessage := errorCode
1006
1007	code := response.Header.Get("X-Amzn-ErrorType")
1008	if len(code) != 0 {
1009		errorCode = restjson.SanitizeErrorCode(code)
1010	}
1011
1012	var buff [1024]byte
1013	ringBuffer := smithyio.NewRingBuffer(buff[:])
1014
1015	body := io.TeeReader(errorBody, ringBuffer)
1016	decoder := json.NewDecoder(body)
1017	decoder.UseNumber()
1018	code, message, err := restjson.GetErrorInfo(decoder)
1019	if err != nil {
1020		var snapshot bytes.Buffer
1021		io.Copy(&snapshot, ringBuffer)
1022		err = &smithy.DeserializationError{
1023			Err:      fmt.Errorf("failed to decode response body, %w", err),
1024			Snapshot: snapshot.Bytes(),
1025		}
1026		return err
1027	}
1028
1029	errorBody.Seek(0, io.SeekStart)
1030	if len(code) != 0 {
1031		errorCode = restjson.SanitizeErrorCode(code)
1032	}
1033	if len(message) != 0 {
1034		errorMessage = message
1035	}
1036
1037	switch {
1038	case strings.EqualFold("AlreadyExistsException", errorCode):
1039		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1040
1041	default:
1042		genericError := &smithy.GenericAPIError{
1043			Code:    errorCode,
1044			Message: errorMessage,
1045		}
1046		return genericError
1047
1048	}
1049}
1050
1051type awsAwsjson11_deserializeOpCreateConferenceProvider struct {
1052}
1053
1054func (*awsAwsjson11_deserializeOpCreateConferenceProvider) ID() string {
1055	return "OperationDeserializer"
1056}
1057
1058func (m *awsAwsjson11_deserializeOpCreateConferenceProvider) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1059	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1060) {
1061	out, metadata, err = next.HandleDeserialize(ctx, in)
1062	if err != nil {
1063		return out, metadata, err
1064	}
1065
1066	response, ok := out.RawResponse.(*smithyhttp.Response)
1067	if !ok {
1068		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1069	}
1070
1071	if response.StatusCode < 200 || response.StatusCode >= 300 {
1072		return out, metadata, awsAwsjson11_deserializeOpErrorCreateConferenceProvider(response, &metadata)
1073	}
1074	output := &CreateConferenceProviderOutput{}
1075	out.Result = output
1076
1077	var buff [1024]byte
1078	ringBuffer := smithyio.NewRingBuffer(buff[:])
1079
1080	body := io.TeeReader(response.Body, ringBuffer)
1081	decoder := json.NewDecoder(body)
1082	decoder.UseNumber()
1083	var shape interface{}
1084	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1085		var snapshot bytes.Buffer
1086		io.Copy(&snapshot, ringBuffer)
1087		err = &smithy.DeserializationError{
1088			Err:      fmt.Errorf("failed to decode response body, %w", err),
1089			Snapshot: snapshot.Bytes(),
1090		}
1091		return out, metadata, err
1092	}
1093
1094	err = awsAwsjson11_deserializeOpDocumentCreateConferenceProviderOutput(&output, shape)
1095	if err != nil {
1096		var snapshot bytes.Buffer
1097		io.Copy(&snapshot, ringBuffer)
1098		err = &smithy.DeserializationError{
1099			Err:      fmt.Errorf("failed to decode response body, %w", err),
1100			Snapshot: snapshot.Bytes(),
1101		}
1102		return out, metadata, err
1103	}
1104
1105	return out, metadata, err
1106}
1107
1108func awsAwsjson11_deserializeOpErrorCreateConferenceProvider(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1109	var errorBuffer bytes.Buffer
1110	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1111		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1112	}
1113	errorBody := bytes.NewReader(errorBuffer.Bytes())
1114
1115	errorCode := "UnknownError"
1116	errorMessage := errorCode
1117
1118	code := response.Header.Get("X-Amzn-ErrorType")
1119	if len(code) != 0 {
1120		errorCode = restjson.SanitizeErrorCode(code)
1121	}
1122
1123	var buff [1024]byte
1124	ringBuffer := smithyio.NewRingBuffer(buff[:])
1125
1126	body := io.TeeReader(errorBody, ringBuffer)
1127	decoder := json.NewDecoder(body)
1128	decoder.UseNumber()
1129	code, message, err := restjson.GetErrorInfo(decoder)
1130	if err != nil {
1131		var snapshot bytes.Buffer
1132		io.Copy(&snapshot, ringBuffer)
1133		err = &smithy.DeserializationError{
1134			Err:      fmt.Errorf("failed to decode response body, %w", err),
1135			Snapshot: snapshot.Bytes(),
1136		}
1137		return err
1138	}
1139
1140	errorBody.Seek(0, io.SeekStart)
1141	if len(code) != 0 {
1142		errorCode = restjson.SanitizeErrorCode(code)
1143	}
1144	if len(message) != 0 {
1145		errorMessage = message
1146	}
1147
1148	switch {
1149	case strings.EqualFold("AlreadyExistsException", errorCode):
1150		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1151
1152	default:
1153		genericError := &smithy.GenericAPIError{
1154			Code:    errorCode,
1155			Message: errorMessage,
1156		}
1157		return genericError
1158
1159	}
1160}
1161
1162type awsAwsjson11_deserializeOpCreateContact struct {
1163}
1164
1165func (*awsAwsjson11_deserializeOpCreateContact) ID() string {
1166	return "OperationDeserializer"
1167}
1168
1169func (m *awsAwsjson11_deserializeOpCreateContact) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1170	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1171) {
1172	out, metadata, err = next.HandleDeserialize(ctx, in)
1173	if err != nil {
1174		return out, metadata, err
1175	}
1176
1177	response, ok := out.RawResponse.(*smithyhttp.Response)
1178	if !ok {
1179		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1180	}
1181
1182	if response.StatusCode < 200 || response.StatusCode >= 300 {
1183		return out, metadata, awsAwsjson11_deserializeOpErrorCreateContact(response, &metadata)
1184	}
1185	output := &CreateContactOutput{}
1186	out.Result = output
1187
1188	var buff [1024]byte
1189	ringBuffer := smithyio.NewRingBuffer(buff[:])
1190
1191	body := io.TeeReader(response.Body, ringBuffer)
1192	decoder := json.NewDecoder(body)
1193	decoder.UseNumber()
1194	var shape interface{}
1195	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1196		var snapshot bytes.Buffer
1197		io.Copy(&snapshot, ringBuffer)
1198		err = &smithy.DeserializationError{
1199			Err:      fmt.Errorf("failed to decode response body, %w", err),
1200			Snapshot: snapshot.Bytes(),
1201		}
1202		return out, metadata, err
1203	}
1204
1205	err = awsAwsjson11_deserializeOpDocumentCreateContactOutput(&output, shape)
1206	if err != nil {
1207		var snapshot bytes.Buffer
1208		io.Copy(&snapshot, ringBuffer)
1209		err = &smithy.DeserializationError{
1210			Err:      fmt.Errorf("failed to decode response body, %w", err),
1211			Snapshot: snapshot.Bytes(),
1212		}
1213		return out, metadata, err
1214	}
1215
1216	return out, metadata, err
1217}
1218
1219func awsAwsjson11_deserializeOpErrorCreateContact(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1220	var errorBuffer bytes.Buffer
1221	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1222		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1223	}
1224	errorBody := bytes.NewReader(errorBuffer.Bytes())
1225
1226	errorCode := "UnknownError"
1227	errorMessage := errorCode
1228
1229	code := response.Header.Get("X-Amzn-ErrorType")
1230	if len(code) != 0 {
1231		errorCode = restjson.SanitizeErrorCode(code)
1232	}
1233
1234	var buff [1024]byte
1235	ringBuffer := smithyio.NewRingBuffer(buff[:])
1236
1237	body := io.TeeReader(errorBody, ringBuffer)
1238	decoder := json.NewDecoder(body)
1239	decoder.UseNumber()
1240	code, message, err := restjson.GetErrorInfo(decoder)
1241	if err != nil {
1242		var snapshot bytes.Buffer
1243		io.Copy(&snapshot, ringBuffer)
1244		err = &smithy.DeserializationError{
1245			Err:      fmt.Errorf("failed to decode response body, %w", err),
1246			Snapshot: snapshot.Bytes(),
1247		}
1248		return err
1249	}
1250
1251	errorBody.Seek(0, io.SeekStart)
1252	if len(code) != 0 {
1253		errorCode = restjson.SanitizeErrorCode(code)
1254	}
1255	if len(message) != 0 {
1256		errorMessage = message
1257	}
1258
1259	switch {
1260	case strings.EqualFold("AlreadyExistsException", errorCode):
1261		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1262
1263	case strings.EqualFold("LimitExceededException", errorCode):
1264		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1265
1266	default:
1267		genericError := &smithy.GenericAPIError{
1268			Code:    errorCode,
1269			Message: errorMessage,
1270		}
1271		return genericError
1272
1273	}
1274}
1275
1276type awsAwsjson11_deserializeOpCreateGatewayGroup struct {
1277}
1278
1279func (*awsAwsjson11_deserializeOpCreateGatewayGroup) ID() string {
1280	return "OperationDeserializer"
1281}
1282
1283func (m *awsAwsjson11_deserializeOpCreateGatewayGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1284	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1285) {
1286	out, metadata, err = next.HandleDeserialize(ctx, in)
1287	if err != nil {
1288		return out, metadata, err
1289	}
1290
1291	response, ok := out.RawResponse.(*smithyhttp.Response)
1292	if !ok {
1293		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1294	}
1295
1296	if response.StatusCode < 200 || response.StatusCode >= 300 {
1297		return out, metadata, awsAwsjson11_deserializeOpErrorCreateGatewayGroup(response, &metadata)
1298	}
1299	output := &CreateGatewayGroupOutput{}
1300	out.Result = output
1301
1302	var buff [1024]byte
1303	ringBuffer := smithyio.NewRingBuffer(buff[:])
1304
1305	body := io.TeeReader(response.Body, ringBuffer)
1306	decoder := json.NewDecoder(body)
1307	decoder.UseNumber()
1308	var shape interface{}
1309	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1310		var snapshot bytes.Buffer
1311		io.Copy(&snapshot, ringBuffer)
1312		err = &smithy.DeserializationError{
1313			Err:      fmt.Errorf("failed to decode response body, %w", err),
1314			Snapshot: snapshot.Bytes(),
1315		}
1316		return out, metadata, err
1317	}
1318
1319	err = awsAwsjson11_deserializeOpDocumentCreateGatewayGroupOutput(&output, shape)
1320	if err != nil {
1321		var snapshot bytes.Buffer
1322		io.Copy(&snapshot, ringBuffer)
1323		err = &smithy.DeserializationError{
1324			Err:      fmt.Errorf("failed to decode response body, %w", err),
1325			Snapshot: snapshot.Bytes(),
1326		}
1327		return out, metadata, err
1328	}
1329
1330	return out, metadata, err
1331}
1332
1333func awsAwsjson11_deserializeOpErrorCreateGatewayGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1334	var errorBuffer bytes.Buffer
1335	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1336		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1337	}
1338	errorBody := bytes.NewReader(errorBuffer.Bytes())
1339
1340	errorCode := "UnknownError"
1341	errorMessage := errorCode
1342
1343	code := response.Header.Get("X-Amzn-ErrorType")
1344	if len(code) != 0 {
1345		errorCode = restjson.SanitizeErrorCode(code)
1346	}
1347
1348	var buff [1024]byte
1349	ringBuffer := smithyio.NewRingBuffer(buff[:])
1350
1351	body := io.TeeReader(errorBody, ringBuffer)
1352	decoder := json.NewDecoder(body)
1353	decoder.UseNumber()
1354	code, message, err := restjson.GetErrorInfo(decoder)
1355	if err != nil {
1356		var snapshot bytes.Buffer
1357		io.Copy(&snapshot, ringBuffer)
1358		err = &smithy.DeserializationError{
1359			Err:      fmt.Errorf("failed to decode response body, %w", err),
1360			Snapshot: snapshot.Bytes(),
1361		}
1362		return err
1363	}
1364
1365	errorBody.Seek(0, io.SeekStart)
1366	if len(code) != 0 {
1367		errorCode = restjson.SanitizeErrorCode(code)
1368	}
1369	if len(message) != 0 {
1370		errorMessage = message
1371	}
1372
1373	switch {
1374	case strings.EqualFold("AlreadyExistsException", errorCode):
1375		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1376
1377	case strings.EqualFold("LimitExceededException", errorCode):
1378		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1379
1380	default:
1381		genericError := &smithy.GenericAPIError{
1382			Code:    errorCode,
1383			Message: errorMessage,
1384		}
1385		return genericError
1386
1387	}
1388}
1389
1390type awsAwsjson11_deserializeOpCreateNetworkProfile struct {
1391}
1392
1393func (*awsAwsjson11_deserializeOpCreateNetworkProfile) ID() string {
1394	return "OperationDeserializer"
1395}
1396
1397func (m *awsAwsjson11_deserializeOpCreateNetworkProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1398	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1399) {
1400	out, metadata, err = next.HandleDeserialize(ctx, in)
1401	if err != nil {
1402		return out, metadata, err
1403	}
1404
1405	response, ok := out.RawResponse.(*smithyhttp.Response)
1406	if !ok {
1407		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1408	}
1409
1410	if response.StatusCode < 200 || response.StatusCode >= 300 {
1411		return out, metadata, awsAwsjson11_deserializeOpErrorCreateNetworkProfile(response, &metadata)
1412	}
1413	output := &CreateNetworkProfileOutput{}
1414	out.Result = output
1415
1416	var buff [1024]byte
1417	ringBuffer := smithyio.NewRingBuffer(buff[:])
1418
1419	body := io.TeeReader(response.Body, ringBuffer)
1420	decoder := json.NewDecoder(body)
1421	decoder.UseNumber()
1422	var shape interface{}
1423	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1424		var snapshot bytes.Buffer
1425		io.Copy(&snapshot, ringBuffer)
1426		err = &smithy.DeserializationError{
1427			Err:      fmt.Errorf("failed to decode response body, %w", err),
1428			Snapshot: snapshot.Bytes(),
1429		}
1430		return out, metadata, err
1431	}
1432
1433	err = awsAwsjson11_deserializeOpDocumentCreateNetworkProfileOutput(&output, shape)
1434	if err != nil {
1435		var snapshot bytes.Buffer
1436		io.Copy(&snapshot, ringBuffer)
1437		err = &smithy.DeserializationError{
1438			Err:      fmt.Errorf("failed to decode response body, %w", err),
1439			Snapshot: snapshot.Bytes(),
1440		}
1441		return out, metadata, err
1442	}
1443
1444	return out, metadata, err
1445}
1446
1447func awsAwsjson11_deserializeOpErrorCreateNetworkProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1448	var errorBuffer bytes.Buffer
1449	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1450		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1451	}
1452	errorBody := bytes.NewReader(errorBuffer.Bytes())
1453
1454	errorCode := "UnknownError"
1455	errorMessage := errorCode
1456
1457	code := response.Header.Get("X-Amzn-ErrorType")
1458	if len(code) != 0 {
1459		errorCode = restjson.SanitizeErrorCode(code)
1460	}
1461
1462	var buff [1024]byte
1463	ringBuffer := smithyio.NewRingBuffer(buff[:])
1464
1465	body := io.TeeReader(errorBody, ringBuffer)
1466	decoder := json.NewDecoder(body)
1467	decoder.UseNumber()
1468	code, message, err := restjson.GetErrorInfo(decoder)
1469	if err != nil {
1470		var snapshot bytes.Buffer
1471		io.Copy(&snapshot, ringBuffer)
1472		err = &smithy.DeserializationError{
1473			Err:      fmt.Errorf("failed to decode response body, %w", err),
1474			Snapshot: snapshot.Bytes(),
1475		}
1476		return err
1477	}
1478
1479	errorBody.Seek(0, io.SeekStart)
1480	if len(code) != 0 {
1481		errorCode = restjson.SanitizeErrorCode(code)
1482	}
1483	if len(message) != 0 {
1484		errorMessage = message
1485	}
1486
1487	switch {
1488	case strings.EqualFold("AlreadyExistsException", errorCode):
1489		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1490
1491	case strings.EqualFold("ConcurrentModificationException", errorCode):
1492		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
1493
1494	case strings.EqualFold("InvalidCertificateAuthorityException", errorCode):
1495		return awsAwsjson11_deserializeErrorInvalidCertificateAuthorityException(response, errorBody)
1496
1497	case strings.EqualFold("InvalidServiceLinkedRoleStateException", errorCode):
1498		return awsAwsjson11_deserializeErrorInvalidServiceLinkedRoleStateException(response, errorBody)
1499
1500	case strings.EqualFold("LimitExceededException", errorCode):
1501		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1502
1503	default:
1504		genericError := &smithy.GenericAPIError{
1505			Code:    errorCode,
1506			Message: errorMessage,
1507		}
1508		return genericError
1509
1510	}
1511}
1512
1513type awsAwsjson11_deserializeOpCreateProfile struct {
1514}
1515
1516func (*awsAwsjson11_deserializeOpCreateProfile) ID() string {
1517	return "OperationDeserializer"
1518}
1519
1520func (m *awsAwsjson11_deserializeOpCreateProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1521	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1522) {
1523	out, metadata, err = next.HandleDeserialize(ctx, in)
1524	if err != nil {
1525		return out, metadata, err
1526	}
1527
1528	response, ok := out.RawResponse.(*smithyhttp.Response)
1529	if !ok {
1530		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1531	}
1532
1533	if response.StatusCode < 200 || response.StatusCode >= 300 {
1534		return out, metadata, awsAwsjson11_deserializeOpErrorCreateProfile(response, &metadata)
1535	}
1536	output := &CreateProfileOutput{}
1537	out.Result = output
1538
1539	var buff [1024]byte
1540	ringBuffer := smithyio.NewRingBuffer(buff[:])
1541
1542	body := io.TeeReader(response.Body, ringBuffer)
1543	decoder := json.NewDecoder(body)
1544	decoder.UseNumber()
1545	var shape interface{}
1546	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1547		var snapshot bytes.Buffer
1548		io.Copy(&snapshot, ringBuffer)
1549		err = &smithy.DeserializationError{
1550			Err:      fmt.Errorf("failed to decode response body, %w", err),
1551			Snapshot: snapshot.Bytes(),
1552		}
1553		return out, metadata, err
1554	}
1555
1556	err = awsAwsjson11_deserializeOpDocumentCreateProfileOutput(&output, shape)
1557	if err != nil {
1558		var snapshot bytes.Buffer
1559		io.Copy(&snapshot, ringBuffer)
1560		err = &smithy.DeserializationError{
1561			Err:      fmt.Errorf("failed to decode response body, %w", err),
1562			Snapshot: snapshot.Bytes(),
1563		}
1564		return out, metadata, err
1565	}
1566
1567	return out, metadata, err
1568}
1569
1570func awsAwsjson11_deserializeOpErrorCreateProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1571	var errorBuffer bytes.Buffer
1572	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1573		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1574	}
1575	errorBody := bytes.NewReader(errorBuffer.Bytes())
1576
1577	errorCode := "UnknownError"
1578	errorMessage := errorCode
1579
1580	code := response.Header.Get("X-Amzn-ErrorType")
1581	if len(code) != 0 {
1582		errorCode = restjson.SanitizeErrorCode(code)
1583	}
1584
1585	var buff [1024]byte
1586	ringBuffer := smithyio.NewRingBuffer(buff[:])
1587
1588	body := io.TeeReader(errorBody, ringBuffer)
1589	decoder := json.NewDecoder(body)
1590	decoder.UseNumber()
1591	code, message, err := restjson.GetErrorInfo(decoder)
1592	if err != nil {
1593		var snapshot bytes.Buffer
1594		io.Copy(&snapshot, ringBuffer)
1595		err = &smithy.DeserializationError{
1596			Err:      fmt.Errorf("failed to decode response body, %w", err),
1597			Snapshot: snapshot.Bytes(),
1598		}
1599		return err
1600	}
1601
1602	errorBody.Seek(0, io.SeekStart)
1603	if len(code) != 0 {
1604		errorCode = restjson.SanitizeErrorCode(code)
1605	}
1606	if len(message) != 0 {
1607		errorMessage = message
1608	}
1609
1610	switch {
1611	case strings.EqualFold("AlreadyExistsException", errorCode):
1612		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1613
1614	case strings.EqualFold("ConcurrentModificationException", errorCode):
1615		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
1616
1617	case strings.EqualFold("LimitExceededException", errorCode):
1618		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1619
1620	default:
1621		genericError := &smithy.GenericAPIError{
1622			Code:    errorCode,
1623			Message: errorMessage,
1624		}
1625		return genericError
1626
1627	}
1628}
1629
1630type awsAwsjson11_deserializeOpCreateRoom struct {
1631}
1632
1633func (*awsAwsjson11_deserializeOpCreateRoom) ID() string {
1634	return "OperationDeserializer"
1635}
1636
1637func (m *awsAwsjson11_deserializeOpCreateRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1638	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1639) {
1640	out, metadata, err = next.HandleDeserialize(ctx, in)
1641	if err != nil {
1642		return out, metadata, err
1643	}
1644
1645	response, ok := out.RawResponse.(*smithyhttp.Response)
1646	if !ok {
1647		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1648	}
1649
1650	if response.StatusCode < 200 || response.StatusCode >= 300 {
1651		return out, metadata, awsAwsjson11_deserializeOpErrorCreateRoom(response, &metadata)
1652	}
1653	output := &CreateRoomOutput{}
1654	out.Result = output
1655
1656	var buff [1024]byte
1657	ringBuffer := smithyio.NewRingBuffer(buff[:])
1658
1659	body := io.TeeReader(response.Body, ringBuffer)
1660	decoder := json.NewDecoder(body)
1661	decoder.UseNumber()
1662	var shape interface{}
1663	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1664		var snapshot bytes.Buffer
1665		io.Copy(&snapshot, ringBuffer)
1666		err = &smithy.DeserializationError{
1667			Err:      fmt.Errorf("failed to decode response body, %w", err),
1668			Snapshot: snapshot.Bytes(),
1669		}
1670		return out, metadata, err
1671	}
1672
1673	err = awsAwsjson11_deserializeOpDocumentCreateRoomOutput(&output, shape)
1674	if err != nil {
1675		var snapshot bytes.Buffer
1676		io.Copy(&snapshot, ringBuffer)
1677		err = &smithy.DeserializationError{
1678			Err:      fmt.Errorf("failed to decode response body, %w", err),
1679			Snapshot: snapshot.Bytes(),
1680		}
1681		return out, metadata, err
1682	}
1683
1684	return out, metadata, err
1685}
1686
1687func awsAwsjson11_deserializeOpErrorCreateRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1688	var errorBuffer bytes.Buffer
1689	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1690		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1691	}
1692	errorBody := bytes.NewReader(errorBuffer.Bytes())
1693
1694	errorCode := "UnknownError"
1695	errorMessage := errorCode
1696
1697	code := response.Header.Get("X-Amzn-ErrorType")
1698	if len(code) != 0 {
1699		errorCode = restjson.SanitizeErrorCode(code)
1700	}
1701
1702	var buff [1024]byte
1703	ringBuffer := smithyio.NewRingBuffer(buff[:])
1704
1705	body := io.TeeReader(errorBody, ringBuffer)
1706	decoder := json.NewDecoder(body)
1707	decoder.UseNumber()
1708	code, message, err := restjson.GetErrorInfo(decoder)
1709	if err != nil {
1710		var snapshot bytes.Buffer
1711		io.Copy(&snapshot, ringBuffer)
1712		err = &smithy.DeserializationError{
1713			Err:      fmt.Errorf("failed to decode response body, %w", err),
1714			Snapshot: snapshot.Bytes(),
1715		}
1716		return err
1717	}
1718
1719	errorBody.Seek(0, io.SeekStart)
1720	if len(code) != 0 {
1721		errorCode = restjson.SanitizeErrorCode(code)
1722	}
1723	if len(message) != 0 {
1724		errorMessage = message
1725	}
1726
1727	switch {
1728	case strings.EqualFold("AlreadyExistsException", errorCode):
1729		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1730
1731	case strings.EqualFold("LimitExceededException", errorCode):
1732		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1733
1734	default:
1735		genericError := &smithy.GenericAPIError{
1736			Code:    errorCode,
1737			Message: errorMessage,
1738		}
1739		return genericError
1740
1741	}
1742}
1743
1744type awsAwsjson11_deserializeOpCreateSkillGroup struct {
1745}
1746
1747func (*awsAwsjson11_deserializeOpCreateSkillGroup) ID() string {
1748	return "OperationDeserializer"
1749}
1750
1751func (m *awsAwsjson11_deserializeOpCreateSkillGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1752	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1753) {
1754	out, metadata, err = next.HandleDeserialize(ctx, in)
1755	if err != nil {
1756		return out, metadata, err
1757	}
1758
1759	response, ok := out.RawResponse.(*smithyhttp.Response)
1760	if !ok {
1761		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1762	}
1763
1764	if response.StatusCode < 200 || response.StatusCode >= 300 {
1765		return out, metadata, awsAwsjson11_deserializeOpErrorCreateSkillGroup(response, &metadata)
1766	}
1767	output := &CreateSkillGroupOutput{}
1768	out.Result = output
1769
1770	var buff [1024]byte
1771	ringBuffer := smithyio.NewRingBuffer(buff[:])
1772
1773	body := io.TeeReader(response.Body, ringBuffer)
1774	decoder := json.NewDecoder(body)
1775	decoder.UseNumber()
1776	var shape interface{}
1777	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1778		var snapshot bytes.Buffer
1779		io.Copy(&snapshot, ringBuffer)
1780		err = &smithy.DeserializationError{
1781			Err:      fmt.Errorf("failed to decode response body, %w", err),
1782			Snapshot: snapshot.Bytes(),
1783		}
1784		return out, metadata, err
1785	}
1786
1787	err = awsAwsjson11_deserializeOpDocumentCreateSkillGroupOutput(&output, shape)
1788	if err != nil {
1789		var snapshot bytes.Buffer
1790		io.Copy(&snapshot, ringBuffer)
1791		err = &smithy.DeserializationError{
1792			Err:      fmt.Errorf("failed to decode response body, %w", err),
1793			Snapshot: snapshot.Bytes(),
1794		}
1795		return out, metadata, err
1796	}
1797
1798	return out, metadata, err
1799}
1800
1801func awsAwsjson11_deserializeOpErrorCreateSkillGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1802	var errorBuffer bytes.Buffer
1803	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1804		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1805	}
1806	errorBody := bytes.NewReader(errorBuffer.Bytes())
1807
1808	errorCode := "UnknownError"
1809	errorMessage := errorCode
1810
1811	code := response.Header.Get("X-Amzn-ErrorType")
1812	if len(code) != 0 {
1813		errorCode = restjson.SanitizeErrorCode(code)
1814	}
1815
1816	var buff [1024]byte
1817	ringBuffer := smithyio.NewRingBuffer(buff[:])
1818
1819	body := io.TeeReader(errorBody, ringBuffer)
1820	decoder := json.NewDecoder(body)
1821	decoder.UseNumber()
1822	code, message, err := restjson.GetErrorInfo(decoder)
1823	if err != nil {
1824		var snapshot bytes.Buffer
1825		io.Copy(&snapshot, ringBuffer)
1826		err = &smithy.DeserializationError{
1827			Err:      fmt.Errorf("failed to decode response body, %w", err),
1828			Snapshot: snapshot.Bytes(),
1829		}
1830		return err
1831	}
1832
1833	errorBody.Seek(0, io.SeekStart)
1834	if len(code) != 0 {
1835		errorCode = restjson.SanitizeErrorCode(code)
1836	}
1837	if len(message) != 0 {
1838		errorMessage = message
1839	}
1840
1841	switch {
1842	case strings.EqualFold("AlreadyExistsException", errorCode):
1843		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
1844
1845	case strings.EqualFold("ConcurrentModificationException", errorCode):
1846		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
1847
1848	case strings.EqualFold("LimitExceededException", errorCode):
1849		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1850
1851	default:
1852		genericError := &smithy.GenericAPIError{
1853			Code:    errorCode,
1854			Message: errorMessage,
1855		}
1856		return genericError
1857
1858	}
1859}
1860
1861type awsAwsjson11_deserializeOpCreateUser struct {
1862}
1863
1864func (*awsAwsjson11_deserializeOpCreateUser) ID() string {
1865	return "OperationDeserializer"
1866}
1867
1868func (m *awsAwsjson11_deserializeOpCreateUser) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1869	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1870) {
1871	out, metadata, err = next.HandleDeserialize(ctx, in)
1872	if err != nil {
1873		return out, metadata, err
1874	}
1875
1876	response, ok := out.RawResponse.(*smithyhttp.Response)
1877	if !ok {
1878		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1879	}
1880
1881	if response.StatusCode < 200 || response.StatusCode >= 300 {
1882		return out, metadata, awsAwsjson11_deserializeOpErrorCreateUser(response, &metadata)
1883	}
1884	output := &CreateUserOutput{}
1885	out.Result = output
1886
1887	var buff [1024]byte
1888	ringBuffer := smithyio.NewRingBuffer(buff[:])
1889
1890	body := io.TeeReader(response.Body, ringBuffer)
1891	decoder := json.NewDecoder(body)
1892	decoder.UseNumber()
1893	var shape interface{}
1894	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
1895		var snapshot bytes.Buffer
1896		io.Copy(&snapshot, ringBuffer)
1897		err = &smithy.DeserializationError{
1898			Err:      fmt.Errorf("failed to decode response body, %w", err),
1899			Snapshot: snapshot.Bytes(),
1900		}
1901		return out, metadata, err
1902	}
1903
1904	err = awsAwsjson11_deserializeOpDocumentCreateUserOutput(&output, shape)
1905	if err != nil {
1906		var snapshot bytes.Buffer
1907		io.Copy(&snapshot, ringBuffer)
1908		err = &smithy.DeserializationError{
1909			Err:      fmt.Errorf("failed to decode response body, %w", err),
1910			Snapshot: snapshot.Bytes(),
1911		}
1912		return out, metadata, err
1913	}
1914
1915	return out, metadata, err
1916}
1917
1918func awsAwsjson11_deserializeOpErrorCreateUser(response *smithyhttp.Response, metadata *middleware.Metadata) error {
1919	var errorBuffer bytes.Buffer
1920	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
1921		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
1922	}
1923	errorBody := bytes.NewReader(errorBuffer.Bytes())
1924
1925	errorCode := "UnknownError"
1926	errorMessage := errorCode
1927
1928	code := response.Header.Get("X-Amzn-ErrorType")
1929	if len(code) != 0 {
1930		errorCode = restjson.SanitizeErrorCode(code)
1931	}
1932
1933	var buff [1024]byte
1934	ringBuffer := smithyio.NewRingBuffer(buff[:])
1935
1936	body := io.TeeReader(errorBody, ringBuffer)
1937	decoder := json.NewDecoder(body)
1938	decoder.UseNumber()
1939	code, message, err := restjson.GetErrorInfo(decoder)
1940	if err != nil {
1941		var snapshot bytes.Buffer
1942		io.Copy(&snapshot, ringBuffer)
1943		err = &smithy.DeserializationError{
1944			Err:      fmt.Errorf("failed to decode response body, %w", err),
1945			Snapshot: snapshot.Bytes(),
1946		}
1947		return err
1948	}
1949
1950	errorBody.Seek(0, io.SeekStart)
1951	if len(code) != 0 {
1952		errorCode = restjson.SanitizeErrorCode(code)
1953	}
1954	if len(message) != 0 {
1955		errorMessage = message
1956	}
1957
1958	switch {
1959	case strings.EqualFold("ConcurrentModificationException", errorCode):
1960		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
1961
1962	case strings.EqualFold("LimitExceededException", errorCode):
1963		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
1964
1965	case strings.EqualFold("ResourceInUseException", errorCode):
1966		return awsAwsjson11_deserializeErrorResourceInUseException(response, errorBody)
1967
1968	default:
1969		genericError := &smithy.GenericAPIError{
1970			Code:    errorCode,
1971			Message: errorMessage,
1972		}
1973		return genericError
1974
1975	}
1976}
1977
1978type awsAwsjson11_deserializeOpDeleteAddressBook struct {
1979}
1980
1981func (*awsAwsjson11_deserializeOpDeleteAddressBook) ID() string {
1982	return "OperationDeserializer"
1983}
1984
1985func (m *awsAwsjson11_deserializeOpDeleteAddressBook) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
1986	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
1987) {
1988	out, metadata, err = next.HandleDeserialize(ctx, in)
1989	if err != nil {
1990		return out, metadata, err
1991	}
1992
1993	response, ok := out.RawResponse.(*smithyhttp.Response)
1994	if !ok {
1995		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
1996	}
1997
1998	if response.StatusCode < 200 || response.StatusCode >= 300 {
1999		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteAddressBook(response, &metadata)
2000	}
2001	output := &DeleteAddressBookOutput{}
2002	out.Result = output
2003
2004	var buff [1024]byte
2005	ringBuffer := smithyio.NewRingBuffer(buff[:])
2006
2007	body := io.TeeReader(response.Body, ringBuffer)
2008	decoder := json.NewDecoder(body)
2009	decoder.UseNumber()
2010	var shape interface{}
2011	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2012		var snapshot bytes.Buffer
2013		io.Copy(&snapshot, ringBuffer)
2014		err = &smithy.DeserializationError{
2015			Err:      fmt.Errorf("failed to decode response body, %w", err),
2016			Snapshot: snapshot.Bytes(),
2017		}
2018		return out, metadata, err
2019	}
2020
2021	err = awsAwsjson11_deserializeOpDocumentDeleteAddressBookOutput(&output, shape)
2022	if err != nil {
2023		var snapshot bytes.Buffer
2024		io.Copy(&snapshot, ringBuffer)
2025		err = &smithy.DeserializationError{
2026			Err:      fmt.Errorf("failed to decode response body, %w", err),
2027			Snapshot: snapshot.Bytes(),
2028		}
2029		return out, metadata, err
2030	}
2031
2032	return out, metadata, err
2033}
2034
2035func awsAwsjson11_deserializeOpErrorDeleteAddressBook(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2036	var errorBuffer bytes.Buffer
2037	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2038		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2039	}
2040	errorBody := bytes.NewReader(errorBuffer.Bytes())
2041
2042	errorCode := "UnknownError"
2043	errorMessage := errorCode
2044
2045	code := response.Header.Get("X-Amzn-ErrorType")
2046	if len(code) != 0 {
2047		errorCode = restjson.SanitizeErrorCode(code)
2048	}
2049
2050	var buff [1024]byte
2051	ringBuffer := smithyio.NewRingBuffer(buff[:])
2052
2053	body := io.TeeReader(errorBody, ringBuffer)
2054	decoder := json.NewDecoder(body)
2055	decoder.UseNumber()
2056	code, message, err := restjson.GetErrorInfo(decoder)
2057	if err != nil {
2058		var snapshot bytes.Buffer
2059		io.Copy(&snapshot, ringBuffer)
2060		err = &smithy.DeserializationError{
2061			Err:      fmt.Errorf("failed to decode response body, %w", err),
2062			Snapshot: snapshot.Bytes(),
2063		}
2064		return err
2065	}
2066
2067	errorBody.Seek(0, io.SeekStart)
2068	if len(code) != 0 {
2069		errorCode = restjson.SanitizeErrorCode(code)
2070	}
2071	if len(message) != 0 {
2072		errorMessage = message
2073	}
2074
2075	switch {
2076	case strings.EqualFold("ConcurrentModificationException", errorCode):
2077		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
2078
2079	case strings.EqualFold("NotFoundException", errorCode):
2080		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2081
2082	default:
2083		genericError := &smithy.GenericAPIError{
2084			Code:    errorCode,
2085			Message: errorMessage,
2086		}
2087		return genericError
2088
2089	}
2090}
2091
2092type awsAwsjson11_deserializeOpDeleteBusinessReportSchedule struct {
2093}
2094
2095func (*awsAwsjson11_deserializeOpDeleteBusinessReportSchedule) ID() string {
2096	return "OperationDeserializer"
2097}
2098
2099func (m *awsAwsjson11_deserializeOpDeleteBusinessReportSchedule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2100	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2101) {
2102	out, metadata, err = next.HandleDeserialize(ctx, in)
2103	if err != nil {
2104		return out, metadata, err
2105	}
2106
2107	response, ok := out.RawResponse.(*smithyhttp.Response)
2108	if !ok {
2109		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2110	}
2111
2112	if response.StatusCode < 200 || response.StatusCode >= 300 {
2113		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteBusinessReportSchedule(response, &metadata)
2114	}
2115	output := &DeleteBusinessReportScheduleOutput{}
2116	out.Result = output
2117
2118	var buff [1024]byte
2119	ringBuffer := smithyio.NewRingBuffer(buff[:])
2120
2121	body := io.TeeReader(response.Body, ringBuffer)
2122	decoder := json.NewDecoder(body)
2123	decoder.UseNumber()
2124	var shape interface{}
2125	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2126		var snapshot bytes.Buffer
2127		io.Copy(&snapshot, ringBuffer)
2128		err = &smithy.DeserializationError{
2129			Err:      fmt.Errorf("failed to decode response body, %w", err),
2130			Snapshot: snapshot.Bytes(),
2131		}
2132		return out, metadata, err
2133	}
2134
2135	err = awsAwsjson11_deserializeOpDocumentDeleteBusinessReportScheduleOutput(&output, shape)
2136	if err != nil {
2137		var snapshot bytes.Buffer
2138		io.Copy(&snapshot, ringBuffer)
2139		err = &smithy.DeserializationError{
2140			Err:      fmt.Errorf("failed to decode response body, %w", err),
2141			Snapshot: snapshot.Bytes(),
2142		}
2143		return out, metadata, err
2144	}
2145
2146	return out, metadata, err
2147}
2148
2149func awsAwsjson11_deserializeOpErrorDeleteBusinessReportSchedule(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2150	var errorBuffer bytes.Buffer
2151	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2152		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2153	}
2154	errorBody := bytes.NewReader(errorBuffer.Bytes())
2155
2156	errorCode := "UnknownError"
2157	errorMessage := errorCode
2158
2159	code := response.Header.Get("X-Amzn-ErrorType")
2160	if len(code) != 0 {
2161		errorCode = restjson.SanitizeErrorCode(code)
2162	}
2163
2164	var buff [1024]byte
2165	ringBuffer := smithyio.NewRingBuffer(buff[:])
2166
2167	body := io.TeeReader(errorBody, ringBuffer)
2168	decoder := json.NewDecoder(body)
2169	decoder.UseNumber()
2170	code, message, err := restjson.GetErrorInfo(decoder)
2171	if err != nil {
2172		var snapshot bytes.Buffer
2173		io.Copy(&snapshot, ringBuffer)
2174		err = &smithy.DeserializationError{
2175			Err:      fmt.Errorf("failed to decode response body, %w", err),
2176			Snapshot: snapshot.Bytes(),
2177		}
2178		return err
2179	}
2180
2181	errorBody.Seek(0, io.SeekStart)
2182	if len(code) != 0 {
2183		errorCode = restjson.SanitizeErrorCode(code)
2184	}
2185	if len(message) != 0 {
2186		errorMessage = message
2187	}
2188
2189	switch {
2190	case strings.EqualFold("ConcurrentModificationException", errorCode):
2191		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
2192
2193	case strings.EqualFold("NotFoundException", errorCode):
2194		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2195
2196	default:
2197		genericError := &smithy.GenericAPIError{
2198			Code:    errorCode,
2199			Message: errorMessage,
2200		}
2201		return genericError
2202
2203	}
2204}
2205
2206type awsAwsjson11_deserializeOpDeleteConferenceProvider struct {
2207}
2208
2209func (*awsAwsjson11_deserializeOpDeleteConferenceProvider) ID() string {
2210	return "OperationDeserializer"
2211}
2212
2213func (m *awsAwsjson11_deserializeOpDeleteConferenceProvider) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2214	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2215) {
2216	out, metadata, err = next.HandleDeserialize(ctx, in)
2217	if err != nil {
2218		return out, metadata, err
2219	}
2220
2221	response, ok := out.RawResponse.(*smithyhttp.Response)
2222	if !ok {
2223		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2224	}
2225
2226	if response.StatusCode < 200 || response.StatusCode >= 300 {
2227		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteConferenceProvider(response, &metadata)
2228	}
2229	output := &DeleteConferenceProviderOutput{}
2230	out.Result = output
2231
2232	var buff [1024]byte
2233	ringBuffer := smithyio.NewRingBuffer(buff[:])
2234
2235	body := io.TeeReader(response.Body, ringBuffer)
2236	decoder := json.NewDecoder(body)
2237	decoder.UseNumber()
2238	var shape interface{}
2239	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2240		var snapshot bytes.Buffer
2241		io.Copy(&snapshot, ringBuffer)
2242		err = &smithy.DeserializationError{
2243			Err:      fmt.Errorf("failed to decode response body, %w", err),
2244			Snapshot: snapshot.Bytes(),
2245		}
2246		return out, metadata, err
2247	}
2248
2249	err = awsAwsjson11_deserializeOpDocumentDeleteConferenceProviderOutput(&output, shape)
2250	if err != nil {
2251		var snapshot bytes.Buffer
2252		io.Copy(&snapshot, ringBuffer)
2253		err = &smithy.DeserializationError{
2254			Err:      fmt.Errorf("failed to decode response body, %w", err),
2255			Snapshot: snapshot.Bytes(),
2256		}
2257		return out, metadata, err
2258	}
2259
2260	return out, metadata, err
2261}
2262
2263func awsAwsjson11_deserializeOpErrorDeleteConferenceProvider(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2264	var errorBuffer bytes.Buffer
2265	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2266		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2267	}
2268	errorBody := bytes.NewReader(errorBuffer.Bytes())
2269
2270	errorCode := "UnknownError"
2271	errorMessage := errorCode
2272
2273	code := response.Header.Get("X-Amzn-ErrorType")
2274	if len(code) != 0 {
2275		errorCode = restjson.SanitizeErrorCode(code)
2276	}
2277
2278	var buff [1024]byte
2279	ringBuffer := smithyio.NewRingBuffer(buff[:])
2280
2281	body := io.TeeReader(errorBody, ringBuffer)
2282	decoder := json.NewDecoder(body)
2283	decoder.UseNumber()
2284	code, message, err := restjson.GetErrorInfo(decoder)
2285	if err != nil {
2286		var snapshot bytes.Buffer
2287		io.Copy(&snapshot, ringBuffer)
2288		err = &smithy.DeserializationError{
2289			Err:      fmt.Errorf("failed to decode response body, %w", err),
2290			Snapshot: snapshot.Bytes(),
2291		}
2292		return err
2293	}
2294
2295	errorBody.Seek(0, io.SeekStart)
2296	if len(code) != 0 {
2297		errorCode = restjson.SanitizeErrorCode(code)
2298	}
2299	if len(message) != 0 {
2300		errorMessage = message
2301	}
2302
2303	switch {
2304	case strings.EqualFold("NotFoundException", errorCode):
2305		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2306
2307	default:
2308		genericError := &smithy.GenericAPIError{
2309			Code:    errorCode,
2310			Message: errorMessage,
2311		}
2312		return genericError
2313
2314	}
2315}
2316
2317type awsAwsjson11_deserializeOpDeleteContact struct {
2318}
2319
2320func (*awsAwsjson11_deserializeOpDeleteContact) ID() string {
2321	return "OperationDeserializer"
2322}
2323
2324func (m *awsAwsjson11_deserializeOpDeleteContact) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2325	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2326) {
2327	out, metadata, err = next.HandleDeserialize(ctx, in)
2328	if err != nil {
2329		return out, metadata, err
2330	}
2331
2332	response, ok := out.RawResponse.(*smithyhttp.Response)
2333	if !ok {
2334		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2335	}
2336
2337	if response.StatusCode < 200 || response.StatusCode >= 300 {
2338		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteContact(response, &metadata)
2339	}
2340	output := &DeleteContactOutput{}
2341	out.Result = output
2342
2343	var buff [1024]byte
2344	ringBuffer := smithyio.NewRingBuffer(buff[:])
2345
2346	body := io.TeeReader(response.Body, ringBuffer)
2347	decoder := json.NewDecoder(body)
2348	decoder.UseNumber()
2349	var shape interface{}
2350	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2351		var snapshot bytes.Buffer
2352		io.Copy(&snapshot, ringBuffer)
2353		err = &smithy.DeserializationError{
2354			Err:      fmt.Errorf("failed to decode response body, %w", err),
2355			Snapshot: snapshot.Bytes(),
2356		}
2357		return out, metadata, err
2358	}
2359
2360	err = awsAwsjson11_deserializeOpDocumentDeleteContactOutput(&output, shape)
2361	if err != nil {
2362		var snapshot bytes.Buffer
2363		io.Copy(&snapshot, ringBuffer)
2364		err = &smithy.DeserializationError{
2365			Err:      fmt.Errorf("failed to decode response body, %w", err),
2366			Snapshot: snapshot.Bytes(),
2367		}
2368		return out, metadata, err
2369	}
2370
2371	return out, metadata, err
2372}
2373
2374func awsAwsjson11_deserializeOpErrorDeleteContact(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2375	var errorBuffer bytes.Buffer
2376	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2377		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2378	}
2379	errorBody := bytes.NewReader(errorBuffer.Bytes())
2380
2381	errorCode := "UnknownError"
2382	errorMessage := errorCode
2383
2384	code := response.Header.Get("X-Amzn-ErrorType")
2385	if len(code) != 0 {
2386		errorCode = restjson.SanitizeErrorCode(code)
2387	}
2388
2389	var buff [1024]byte
2390	ringBuffer := smithyio.NewRingBuffer(buff[:])
2391
2392	body := io.TeeReader(errorBody, ringBuffer)
2393	decoder := json.NewDecoder(body)
2394	decoder.UseNumber()
2395	code, message, err := restjson.GetErrorInfo(decoder)
2396	if err != nil {
2397		var snapshot bytes.Buffer
2398		io.Copy(&snapshot, ringBuffer)
2399		err = &smithy.DeserializationError{
2400			Err:      fmt.Errorf("failed to decode response body, %w", err),
2401			Snapshot: snapshot.Bytes(),
2402		}
2403		return err
2404	}
2405
2406	errorBody.Seek(0, io.SeekStart)
2407	if len(code) != 0 {
2408		errorCode = restjson.SanitizeErrorCode(code)
2409	}
2410	if len(message) != 0 {
2411		errorMessage = message
2412	}
2413
2414	switch {
2415	case strings.EqualFold("ConcurrentModificationException", errorCode):
2416		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
2417
2418	case strings.EqualFold("NotFoundException", errorCode):
2419		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2420
2421	default:
2422		genericError := &smithy.GenericAPIError{
2423			Code:    errorCode,
2424			Message: errorMessage,
2425		}
2426		return genericError
2427
2428	}
2429}
2430
2431type awsAwsjson11_deserializeOpDeleteDevice struct {
2432}
2433
2434func (*awsAwsjson11_deserializeOpDeleteDevice) ID() string {
2435	return "OperationDeserializer"
2436}
2437
2438func (m *awsAwsjson11_deserializeOpDeleteDevice) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2439	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2440) {
2441	out, metadata, err = next.HandleDeserialize(ctx, in)
2442	if err != nil {
2443		return out, metadata, err
2444	}
2445
2446	response, ok := out.RawResponse.(*smithyhttp.Response)
2447	if !ok {
2448		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2449	}
2450
2451	if response.StatusCode < 200 || response.StatusCode >= 300 {
2452		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteDevice(response, &metadata)
2453	}
2454	output := &DeleteDeviceOutput{}
2455	out.Result = output
2456
2457	var buff [1024]byte
2458	ringBuffer := smithyio.NewRingBuffer(buff[:])
2459
2460	body := io.TeeReader(response.Body, ringBuffer)
2461	decoder := json.NewDecoder(body)
2462	decoder.UseNumber()
2463	var shape interface{}
2464	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2465		var snapshot bytes.Buffer
2466		io.Copy(&snapshot, ringBuffer)
2467		err = &smithy.DeserializationError{
2468			Err:      fmt.Errorf("failed to decode response body, %w", err),
2469			Snapshot: snapshot.Bytes(),
2470		}
2471		return out, metadata, err
2472	}
2473
2474	err = awsAwsjson11_deserializeOpDocumentDeleteDeviceOutput(&output, shape)
2475	if err != nil {
2476		var snapshot bytes.Buffer
2477		io.Copy(&snapshot, ringBuffer)
2478		err = &smithy.DeserializationError{
2479			Err:      fmt.Errorf("failed to decode response body, %w", err),
2480			Snapshot: snapshot.Bytes(),
2481		}
2482		return out, metadata, err
2483	}
2484
2485	return out, metadata, err
2486}
2487
2488func awsAwsjson11_deserializeOpErrorDeleteDevice(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2489	var errorBuffer bytes.Buffer
2490	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2491		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2492	}
2493	errorBody := bytes.NewReader(errorBuffer.Bytes())
2494
2495	errorCode := "UnknownError"
2496	errorMessage := errorCode
2497
2498	code := response.Header.Get("X-Amzn-ErrorType")
2499	if len(code) != 0 {
2500		errorCode = restjson.SanitizeErrorCode(code)
2501	}
2502
2503	var buff [1024]byte
2504	ringBuffer := smithyio.NewRingBuffer(buff[:])
2505
2506	body := io.TeeReader(errorBody, ringBuffer)
2507	decoder := json.NewDecoder(body)
2508	decoder.UseNumber()
2509	code, message, err := restjson.GetErrorInfo(decoder)
2510	if err != nil {
2511		var snapshot bytes.Buffer
2512		io.Copy(&snapshot, ringBuffer)
2513		err = &smithy.DeserializationError{
2514			Err:      fmt.Errorf("failed to decode response body, %w", err),
2515			Snapshot: snapshot.Bytes(),
2516		}
2517		return err
2518	}
2519
2520	errorBody.Seek(0, io.SeekStart)
2521	if len(code) != 0 {
2522		errorCode = restjson.SanitizeErrorCode(code)
2523	}
2524	if len(message) != 0 {
2525		errorMessage = message
2526	}
2527
2528	switch {
2529	case strings.EqualFold("ConcurrentModificationException", errorCode):
2530		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
2531
2532	case strings.EqualFold("InvalidCertificateAuthorityException", errorCode):
2533		return awsAwsjson11_deserializeErrorInvalidCertificateAuthorityException(response, errorBody)
2534
2535	case strings.EqualFold("NotFoundException", errorCode):
2536		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2537
2538	default:
2539		genericError := &smithy.GenericAPIError{
2540			Code:    errorCode,
2541			Message: errorMessage,
2542		}
2543		return genericError
2544
2545	}
2546}
2547
2548type awsAwsjson11_deserializeOpDeleteDeviceUsageData struct {
2549}
2550
2551func (*awsAwsjson11_deserializeOpDeleteDeviceUsageData) ID() string {
2552	return "OperationDeserializer"
2553}
2554
2555func (m *awsAwsjson11_deserializeOpDeleteDeviceUsageData) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2556	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2557) {
2558	out, metadata, err = next.HandleDeserialize(ctx, in)
2559	if err != nil {
2560		return out, metadata, err
2561	}
2562
2563	response, ok := out.RawResponse.(*smithyhttp.Response)
2564	if !ok {
2565		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2566	}
2567
2568	if response.StatusCode < 200 || response.StatusCode >= 300 {
2569		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteDeviceUsageData(response, &metadata)
2570	}
2571	output := &DeleteDeviceUsageDataOutput{}
2572	out.Result = output
2573
2574	var buff [1024]byte
2575	ringBuffer := smithyio.NewRingBuffer(buff[:])
2576
2577	body := io.TeeReader(response.Body, ringBuffer)
2578	decoder := json.NewDecoder(body)
2579	decoder.UseNumber()
2580	var shape interface{}
2581	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2582		var snapshot bytes.Buffer
2583		io.Copy(&snapshot, ringBuffer)
2584		err = &smithy.DeserializationError{
2585			Err:      fmt.Errorf("failed to decode response body, %w", err),
2586			Snapshot: snapshot.Bytes(),
2587		}
2588		return out, metadata, err
2589	}
2590
2591	err = awsAwsjson11_deserializeOpDocumentDeleteDeviceUsageDataOutput(&output, shape)
2592	if err != nil {
2593		var snapshot bytes.Buffer
2594		io.Copy(&snapshot, ringBuffer)
2595		err = &smithy.DeserializationError{
2596			Err:      fmt.Errorf("failed to decode response body, %w", err),
2597			Snapshot: snapshot.Bytes(),
2598		}
2599		return out, metadata, err
2600	}
2601
2602	return out, metadata, err
2603}
2604
2605func awsAwsjson11_deserializeOpErrorDeleteDeviceUsageData(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2606	var errorBuffer bytes.Buffer
2607	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2608		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2609	}
2610	errorBody := bytes.NewReader(errorBuffer.Bytes())
2611
2612	errorCode := "UnknownError"
2613	errorMessage := errorCode
2614
2615	code := response.Header.Get("X-Amzn-ErrorType")
2616	if len(code) != 0 {
2617		errorCode = restjson.SanitizeErrorCode(code)
2618	}
2619
2620	var buff [1024]byte
2621	ringBuffer := smithyio.NewRingBuffer(buff[:])
2622
2623	body := io.TeeReader(errorBody, ringBuffer)
2624	decoder := json.NewDecoder(body)
2625	decoder.UseNumber()
2626	code, message, err := restjson.GetErrorInfo(decoder)
2627	if err != nil {
2628		var snapshot bytes.Buffer
2629		io.Copy(&snapshot, ringBuffer)
2630		err = &smithy.DeserializationError{
2631			Err:      fmt.Errorf("failed to decode response body, %w", err),
2632			Snapshot: snapshot.Bytes(),
2633		}
2634		return err
2635	}
2636
2637	errorBody.Seek(0, io.SeekStart)
2638	if len(code) != 0 {
2639		errorCode = restjson.SanitizeErrorCode(code)
2640	}
2641	if len(message) != 0 {
2642		errorMessage = message
2643	}
2644
2645	switch {
2646	case strings.EqualFold("DeviceNotRegisteredException", errorCode):
2647		return awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response, errorBody)
2648
2649	case strings.EqualFold("LimitExceededException", errorCode):
2650		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
2651
2652	case strings.EqualFold("NotFoundException", errorCode):
2653		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2654
2655	default:
2656		genericError := &smithy.GenericAPIError{
2657			Code:    errorCode,
2658			Message: errorMessage,
2659		}
2660		return genericError
2661
2662	}
2663}
2664
2665type awsAwsjson11_deserializeOpDeleteGatewayGroup struct {
2666}
2667
2668func (*awsAwsjson11_deserializeOpDeleteGatewayGroup) ID() string {
2669	return "OperationDeserializer"
2670}
2671
2672func (m *awsAwsjson11_deserializeOpDeleteGatewayGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2673	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2674) {
2675	out, metadata, err = next.HandleDeserialize(ctx, in)
2676	if err != nil {
2677		return out, metadata, err
2678	}
2679
2680	response, ok := out.RawResponse.(*smithyhttp.Response)
2681	if !ok {
2682		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2683	}
2684
2685	if response.StatusCode < 200 || response.StatusCode >= 300 {
2686		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteGatewayGroup(response, &metadata)
2687	}
2688	output := &DeleteGatewayGroupOutput{}
2689	out.Result = output
2690
2691	var buff [1024]byte
2692	ringBuffer := smithyio.NewRingBuffer(buff[:])
2693
2694	body := io.TeeReader(response.Body, ringBuffer)
2695	decoder := json.NewDecoder(body)
2696	decoder.UseNumber()
2697	var shape interface{}
2698	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2699		var snapshot bytes.Buffer
2700		io.Copy(&snapshot, ringBuffer)
2701		err = &smithy.DeserializationError{
2702			Err:      fmt.Errorf("failed to decode response body, %w", err),
2703			Snapshot: snapshot.Bytes(),
2704		}
2705		return out, metadata, err
2706	}
2707
2708	err = awsAwsjson11_deserializeOpDocumentDeleteGatewayGroupOutput(&output, shape)
2709	if err != nil {
2710		var snapshot bytes.Buffer
2711		io.Copy(&snapshot, ringBuffer)
2712		err = &smithy.DeserializationError{
2713			Err:      fmt.Errorf("failed to decode response body, %w", err),
2714			Snapshot: snapshot.Bytes(),
2715		}
2716		return out, metadata, err
2717	}
2718
2719	return out, metadata, err
2720}
2721
2722func awsAwsjson11_deserializeOpErrorDeleteGatewayGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2723	var errorBuffer bytes.Buffer
2724	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2725		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2726	}
2727	errorBody := bytes.NewReader(errorBuffer.Bytes())
2728
2729	errorCode := "UnknownError"
2730	errorMessage := errorCode
2731
2732	code := response.Header.Get("X-Amzn-ErrorType")
2733	if len(code) != 0 {
2734		errorCode = restjson.SanitizeErrorCode(code)
2735	}
2736
2737	var buff [1024]byte
2738	ringBuffer := smithyio.NewRingBuffer(buff[:])
2739
2740	body := io.TeeReader(errorBody, ringBuffer)
2741	decoder := json.NewDecoder(body)
2742	decoder.UseNumber()
2743	code, message, err := restjson.GetErrorInfo(decoder)
2744	if err != nil {
2745		var snapshot bytes.Buffer
2746		io.Copy(&snapshot, ringBuffer)
2747		err = &smithy.DeserializationError{
2748			Err:      fmt.Errorf("failed to decode response body, %w", err),
2749			Snapshot: snapshot.Bytes(),
2750		}
2751		return err
2752	}
2753
2754	errorBody.Seek(0, io.SeekStart)
2755	if len(code) != 0 {
2756		errorCode = restjson.SanitizeErrorCode(code)
2757	}
2758	if len(message) != 0 {
2759		errorMessage = message
2760	}
2761
2762	switch {
2763	case strings.EqualFold("ResourceAssociatedException", errorCode):
2764		return awsAwsjson11_deserializeErrorResourceAssociatedException(response, errorBody)
2765
2766	default:
2767		genericError := &smithy.GenericAPIError{
2768			Code:    errorCode,
2769			Message: errorMessage,
2770		}
2771		return genericError
2772
2773	}
2774}
2775
2776type awsAwsjson11_deserializeOpDeleteNetworkProfile struct {
2777}
2778
2779func (*awsAwsjson11_deserializeOpDeleteNetworkProfile) ID() string {
2780	return "OperationDeserializer"
2781}
2782
2783func (m *awsAwsjson11_deserializeOpDeleteNetworkProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2784	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2785) {
2786	out, metadata, err = next.HandleDeserialize(ctx, in)
2787	if err != nil {
2788		return out, metadata, err
2789	}
2790
2791	response, ok := out.RawResponse.(*smithyhttp.Response)
2792	if !ok {
2793		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2794	}
2795
2796	if response.StatusCode < 200 || response.StatusCode >= 300 {
2797		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteNetworkProfile(response, &metadata)
2798	}
2799	output := &DeleteNetworkProfileOutput{}
2800	out.Result = output
2801
2802	var buff [1024]byte
2803	ringBuffer := smithyio.NewRingBuffer(buff[:])
2804
2805	body := io.TeeReader(response.Body, ringBuffer)
2806	decoder := json.NewDecoder(body)
2807	decoder.UseNumber()
2808	var shape interface{}
2809	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2810		var snapshot bytes.Buffer
2811		io.Copy(&snapshot, ringBuffer)
2812		err = &smithy.DeserializationError{
2813			Err:      fmt.Errorf("failed to decode response body, %w", err),
2814			Snapshot: snapshot.Bytes(),
2815		}
2816		return out, metadata, err
2817	}
2818
2819	err = awsAwsjson11_deserializeOpDocumentDeleteNetworkProfileOutput(&output, shape)
2820	if err != nil {
2821		var snapshot bytes.Buffer
2822		io.Copy(&snapshot, ringBuffer)
2823		err = &smithy.DeserializationError{
2824			Err:      fmt.Errorf("failed to decode response body, %w", err),
2825			Snapshot: snapshot.Bytes(),
2826		}
2827		return out, metadata, err
2828	}
2829
2830	return out, metadata, err
2831}
2832
2833func awsAwsjson11_deserializeOpErrorDeleteNetworkProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2834	var errorBuffer bytes.Buffer
2835	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2836		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2837	}
2838	errorBody := bytes.NewReader(errorBuffer.Bytes())
2839
2840	errorCode := "UnknownError"
2841	errorMessage := errorCode
2842
2843	code := response.Header.Get("X-Amzn-ErrorType")
2844	if len(code) != 0 {
2845		errorCode = restjson.SanitizeErrorCode(code)
2846	}
2847
2848	var buff [1024]byte
2849	ringBuffer := smithyio.NewRingBuffer(buff[:])
2850
2851	body := io.TeeReader(errorBody, ringBuffer)
2852	decoder := json.NewDecoder(body)
2853	decoder.UseNumber()
2854	code, message, err := restjson.GetErrorInfo(decoder)
2855	if err != nil {
2856		var snapshot bytes.Buffer
2857		io.Copy(&snapshot, ringBuffer)
2858		err = &smithy.DeserializationError{
2859			Err:      fmt.Errorf("failed to decode response body, %w", err),
2860			Snapshot: snapshot.Bytes(),
2861		}
2862		return err
2863	}
2864
2865	errorBody.Seek(0, io.SeekStart)
2866	if len(code) != 0 {
2867		errorCode = restjson.SanitizeErrorCode(code)
2868	}
2869	if len(message) != 0 {
2870		errorMessage = message
2871	}
2872
2873	switch {
2874	case strings.EqualFold("ConcurrentModificationException", errorCode):
2875		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
2876
2877	case strings.EqualFold("NotFoundException", errorCode):
2878		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2879
2880	case strings.EqualFold("ResourceInUseException", errorCode):
2881		return awsAwsjson11_deserializeErrorResourceInUseException(response, errorBody)
2882
2883	default:
2884		genericError := &smithy.GenericAPIError{
2885			Code:    errorCode,
2886			Message: errorMessage,
2887		}
2888		return genericError
2889
2890	}
2891}
2892
2893type awsAwsjson11_deserializeOpDeleteProfile struct {
2894}
2895
2896func (*awsAwsjson11_deserializeOpDeleteProfile) ID() string {
2897	return "OperationDeserializer"
2898}
2899
2900func (m *awsAwsjson11_deserializeOpDeleteProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
2901	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
2902) {
2903	out, metadata, err = next.HandleDeserialize(ctx, in)
2904	if err != nil {
2905		return out, metadata, err
2906	}
2907
2908	response, ok := out.RawResponse.(*smithyhttp.Response)
2909	if !ok {
2910		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
2911	}
2912
2913	if response.StatusCode < 200 || response.StatusCode >= 300 {
2914		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteProfile(response, &metadata)
2915	}
2916	output := &DeleteProfileOutput{}
2917	out.Result = output
2918
2919	var buff [1024]byte
2920	ringBuffer := smithyio.NewRingBuffer(buff[:])
2921
2922	body := io.TeeReader(response.Body, ringBuffer)
2923	decoder := json.NewDecoder(body)
2924	decoder.UseNumber()
2925	var shape interface{}
2926	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
2927		var snapshot bytes.Buffer
2928		io.Copy(&snapshot, ringBuffer)
2929		err = &smithy.DeserializationError{
2930			Err:      fmt.Errorf("failed to decode response body, %w", err),
2931			Snapshot: snapshot.Bytes(),
2932		}
2933		return out, metadata, err
2934	}
2935
2936	err = awsAwsjson11_deserializeOpDocumentDeleteProfileOutput(&output, shape)
2937	if err != nil {
2938		var snapshot bytes.Buffer
2939		io.Copy(&snapshot, ringBuffer)
2940		err = &smithy.DeserializationError{
2941			Err:      fmt.Errorf("failed to decode response body, %w", err),
2942			Snapshot: snapshot.Bytes(),
2943		}
2944		return out, metadata, err
2945	}
2946
2947	return out, metadata, err
2948}
2949
2950func awsAwsjson11_deserializeOpErrorDeleteProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
2951	var errorBuffer bytes.Buffer
2952	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
2953		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
2954	}
2955	errorBody := bytes.NewReader(errorBuffer.Bytes())
2956
2957	errorCode := "UnknownError"
2958	errorMessage := errorCode
2959
2960	code := response.Header.Get("X-Amzn-ErrorType")
2961	if len(code) != 0 {
2962		errorCode = restjson.SanitizeErrorCode(code)
2963	}
2964
2965	var buff [1024]byte
2966	ringBuffer := smithyio.NewRingBuffer(buff[:])
2967
2968	body := io.TeeReader(errorBody, ringBuffer)
2969	decoder := json.NewDecoder(body)
2970	decoder.UseNumber()
2971	code, message, err := restjson.GetErrorInfo(decoder)
2972	if err != nil {
2973		var snapshot bytes.Buffer
2974		io.Copy(&snapshot, ringBuffer)
2975		err = &smithy.DeserializationError{
2976			Err:      fmt.Errorf("failed to decode response body, %w", err),
2977			Snapshot: snapshot.Bytes(),
2978		}
2979		return err
2980	}
2981
2982	errorBody.Seek(0, io.SeekStart)
2983	if len(code) != 0 {
2984		errorCode = restjson.SanitizeErrorCode(code)
2985	}
2986	if len(message) != 0 {
2987		errorMessage = message
2988	}
2989
2990	switch {
2991	case strings.EqualFold("ConcurrentModificationException", errorCode):
2992		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
2993
2994	case strings.EqualFold("NotFoundException", errorCode):
2995		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
2996
2997	default:
2998		genericError := &smithy.GenericAPIError{
2999			Code:    errorCode,
3000			Message: errorMessage,
3001		}
3002		return genericError
3003
3004	}
3005}
3006
3007type awsAwsjson11_deserializeOpDeleteRoom struct {
3008}
3009
3010func (*awsAwsjson11_deserializeOpDeleteRoom) ID() string {
3011	return "OperationDeserializer"
3012}
3013
3014func (m *awsAwsjson11_deserializeOpDeleteRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3015	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3016) {
3017	out, metadata, err = next.HandleDeserialize(ctx, in)
3018	if err != nil {
3019		return out, metadata, err
3020	}
3021
3022	response, ok := out.RawResponse.(*smithyhttp.Response)
3023	if !ok {
3024		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3025	}
3026
3027	if response.StatusCode < 200 || response.StatusCode >= 300 {
3028		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteRoom(response, &metadata)
3029	}
3030	output := &DeleteRoomOutput{}
3031	out.Result = output
3032
3033	var buff [1024]byte
3034	ringBuffer := smithyio.NewRingBuffer(buff[:])
3035
3036	body := io.TeeReader(response.Body, ringBuffer)
3037	decoder := json.NewDecoder(body)
3038	decoder.UseNumber()
3039	var shape interface{}
3040	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3041		var snapshot bytes.Buffer
3042		io.Copy(&snapshot, ringBuffer)
3043		err = &smithy.DeserializationError{
3044			Err:      fmt.Errorf("failed to decode response body, %w", err),
3045			Snapshot: snapshot.Bytes(),
3046		}
3047		return out, metadata, err
3048	}
3049
3050	err = awsAwsjson11_deserializeOpDocumentDeleteRoomOutput(&output, shape)
3051	if err != nil {
3052		var snapshot bytes.Buffer
3053		io.Copy(&snapshot, ringBuffer)
3054		err = &smithy.DeserializationError{
3055			Err:      fmt.Errorf("failed to decode response body, %w", err),
3056			Snapshot: snapshot.Bytes(),
3057		}
3058		return out, metadata, err
3059	}
3060
3061	return out, metadata, err
3062}
3063
3064func awsAwsjson11_deserializeOpErrorDeleteRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3065	var errorBuffer bytes.Buffer
3066	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3067		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3068	}
3069	errorBody := bytes.NewReader(errorBuffer.Bytes())
3070
3071	errorCode := "UnknownError"
3072	errorMessage := errorCode
3073
3074	code := response.Header.Get("X-Amzn-ErrorType")
3075	if len(code) != 0 {
3076		errorCode = restjson.SanitizeErrorCode(code)
3077	}
3078
3079	var buff [1024]byte
3080	ringBuffer := smithyio.NewRingBuffer(buff[:])
3081
3082	body := io.TeeReader(errorBody, ringBuffer)
3083	decoder := json.NewDecoder(body)
3084	decoder.UseNumber()
3085	code, message, err := restjson.GetErrorInfo(decoder)
3086	if err != nil {
3087		var snapshot bytes.Buffer
3088		io.Copy(&snapshot, ringBuffer)
3089		err = &smithy.DeserializationError{
3090			Err:      fmt.Errorf("failed to decode response body, %w", err),
3091			Snapshot: snapshot.Bytes(),
3092		}
3093		return err
3094	}
3095
3096	errorBody.Seek(0, io.SeekStart)
3097	if len(code) != 0 {
3098		errorCode = restjson.SanitizeErrorCode(code)
3099	}
3100	if len(message) != 0 {
3101		errorMessage = message
3102	}
3103
3104	switch {
3105	case strings.EqualFold("ConcurrentModificationException", errorCode):
3106		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3107
3108	case strings.EqualFold("NotFoundException", errorCode):
3109		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
3110
3111	default:
3112		genericError := &smithy.GenericAPIError{
3113			Code:    errorCode,
3114			Message: errorMessage,
3115		}
3116		return genericError
3117
3118	}
3119}
3120
3121type awsAwsjson11_deserializeOpDeleteRoomSkillParameter struct {
3122}
3123
3124func (*awsAwsjson11_deserializeOpDeleteRoomSkillParameter) ID() string {
3125	return "OperationDeserializer"
3126}
3127
3128func (m *awsAwsjson11_deserializeOpDeleteRoomSkillParameter) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3129	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3130) {
3131	out, metadata, err = next.HandleDeserialize(ctx, in)
3132	if err != nil {
3133		return out, metadata, err
3134	}
3135
3136	response, ok := out.RawResponse.(*smithyhttp.Response)
3137	if !ok {
3138		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3139	}
3140
3141	if response.StatusCode < 200 || response.StatusCode >= 300 {
3142		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteRoomSkillParameter(response, &metadata)
3143	}
3144	output := &DeleteRoomSkillParameterOutput{}
3145	out.Result = output
3146
3147	var buff [1024]byte
3148	ringBuffer := smithyio.NewRingBuffer(buff[:])
3149
3150	body := io.TeeReader(response.Body, ringBuffer)
3151	decoder := json.NewDecoder(body)
3152	decoder.UseNumber()
3153	var shape interface{}
3154	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3155		var snapshot bytes.Buffer
3156		io.Copy(&snapshot, ringBuffer)
3157		err = &smithy.DeserializationError{
3158			Err:      fmt.Errorf("failed to decode response body, %w", err),
3159			Snapshot: snapshot.Bytes(),
3160		}
3161		return out, metadata, err
3162	}
3163
3164	err = awsAwsjson11_deserializeOpDocumentDeleteRoomSkillParameterOutput(&output, shape)
3165	if err != nil {
3166		var snapshot bytes.Buffer
3167		io.Copy(&snapshot, ringBuffer)
3168		err = &smithy.DeserializationError{
3169			Err:      fmt.Errorf("failed to decode response body, %w", err),
3170			Snapshot: snapshot.Bytes(),
3171		}
3172		return out, metadata, err
3173	}
3174
3175	return out, metadata, err
3176}
3177
3178func awsAwsjson11_deserializeOpErrorDeleteRoomSkillParameter(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3179	var errorBuffer bytes.Buffer
3180	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3181		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3182	}
3183	errorBody := bytes.NewReader(errorBuffer.Bytes())
3184
3185	errorCode := "UnknownError"
3186	errorMessage := errorCode
3187
3188	code := response.Header.Get("X-Amzn-ErrorType")
3189	if len(code) != 0 {
3190		errorCode = restjson.SanitizeErrorCode(code)
3191	}
3192
3193	var buff [1024]byte
3194	ringBuffer := smithyio.NewRingBuffer(buff[:])
3195
3196	body := io.TeeReader(errorBody, ringBuffer)
3197	decoder := json.NewDecoder(body)
3198	decoder.UseNumber()
3199	code, message, err := restjson.GetErrorInfo(decoder)
3200	if err != nil {
3201		var snapshot bytes.Buffer
3202		io.Copy(&snapshot, ringBuffer)
3203		err = &smithy.DeserializationError{
3204			Err:      fmt.Errorf("failed to decode response body, %w", err),
3205			Snapshot: snapshot.Bytes(),
3206		}
3207		return err
3208	}
3209
3210	errorBody.Seek(0, io.SeekStart)
3211	if len(code) != 0 {
3212		errorCode = restjson.SanitizeErrorCode(code)
3213	}
3214	if len(message) != 0 {
3215		errorMessage = message
3216	}
3217
3218	switch {
3219	case strings.EqualFold("ConcurrentModificationException", errorCode):
3220		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3221
3222	default:
3223		genericError := &smithy.GenericAPIError{
3224			Code:    errorCode,
3225			Message: errorMessage,
3226		}
3227		return genericError
3228
3229	}
3230}
3231
3232type awsAwsjson11_deserializeOpDeleteSkillAuthorization struct {
3233}
3234
3235func (*awsAwsjson11_deserializeOpDeleteSkillAuthorization) ID() string {
3236	return "OperationDeserializer"
3237}
3238
3239func (m *awsAwsjson11_deserializeOpDeleteSkillAuthorization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3240	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3241) {
3242	out, metadata, err = next.HandleDeserialize(ctx, in)
3243	if err != nil {
3244		return out, metadata, err
3245	}
3246
3247	response, ok := out.RawResponse.(*smithyhttp.Response)
3248	if !ok {
3249		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3250	}
3251
3252	if response.StatusCode < 200 || response.StatusCode >= 300 {
3253		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteSkillAuthorization(response, &metadata)
3254	}
3255	output := &DeleteSkillAuthorizationOutput{}
3256	out.Result = output
3257
3258	var buff [1024]byte
3259	ringBuffer := smithyio.NewRingBuffer(buff[:])
3260
3261	body := io.TeeReader(response.Body, ringBuffer)
3262	decoder := json.NewDecoder(body)
3263	decoder.UseNumber()
3264	var shape interface{}
3265	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3266		var snapshot bytes.Buffer
3267		io.Copy(&snapshot, ringBuffer)
3268		err = &smithy.DeserializationError{
3269			Err:      fmt.Errorf("failed to decode response body, %w", err),
3270			Snapshot: snapshot.Bytes(),
3271		}
3272		return out, metadata, err
3273	}
3274
3275	err = awsAwsjson11_deserializeOpDocumentDeleteSkillAuthorizationOutput(&output, shape)
3276	if err != nil {
3277		var snapshot bytes.Buffer
3278		io.Copy(&snapshot, ringBuffer)
3279		err = &smithy.DeserializationError{
3280			Err:      fmt.Errorf("failed to decode response body, %w", err),
3281			Snapshot: snapshot.Bytes(),
3282		}
3283		return out, metadata, err
3284	}
3285
3286	return out, metadata, err
3287}
3288
3289func awsAwsjson11_deserializeOpErrorDeleteSkillAuthorization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3290	var errorBuffer bytes.Buffer
3291	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3292		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3293	}
3294	errorBody := bytes.NewReader(errorBuffer.Bytes())
3295
3296	errorCode := "UnknownError"
3297	errorMessage := errorCode
3298
3299	code := response.Header.Get("X-Amzn-ErrorType")
3300	if len(code) != 0 {
3301		errorCode = restjson.SanitizeErrorCode(code)
3302	}
3303
3304	var buff [1024]byte
3305	ringBuffer := smithyio.NewRingBuffer(buff[:])
3306
3307	body := io.TeeReader(errorBody, ringBuffer)
3308	decoder := json.NewDecoder(body)
3309	decoder.UseNumber()
3310	code, message, err := restjson.GetErrorInfo(decoder)
3311	if err != nil {
3312		var snapshot bytes.Buffer
3313		io.Copy(&snapshot, ringBuffer)
3314		err = &smithy.DeserializationError{
3315			Err:      fmt.Errorf("failed to decode response body, %w", err),
3316			Snapshot: snapshot.Bytes(),
3317		}
3318		return err
3319	}
3320
3321	errorBody.Seek(0, io.SeekStart)
3322	if len(code) != 0 {
3323		errorCode = restjson.SanitizeErrorCode(code)
3324	}
3325	if len(message) != 0 {
3326		errorMessage = message
3327	}
3328
3329	switch {
3330	case strings.EqualFold("ConcurrentModificationException", errorCode):
3331		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3332
3333	case strings.EqualFold("NotFoundException", errorCode):
3334		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
3335
3336	default:
3337		genericError := &smithy.GenericAPIError{
3338			Code:    errorCode,
3339			Message: errorMessage,
3340		}
3341		return genericError
3342
3343	}
3344}
3345
3346type awsAwsjson11_deserializeOpDeleteSkillGroup struct {
3347}
3348
3349func (*awsAwsjson11_deserializeOpDeleteSkillGroup) ID() string {
3350	return "OperationDeserializer"
3351}
3352
3353func (m *awsAwsjson11_deserializeOpDeleteSkillGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3354	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3355) {
3356	out, metadata, err = next.HandleDeserialize(ctx, in)
3357	if err != nil {
3358		return out, metadata, err
3359	}
3360
3361	response, ok := out.RawResponse.(*smithyhttp.Response)
3362	if !ok {
3363		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3364	}
3365
3366	if response.StatusCode < 200 || response.StatusCode >= 300 {
3367		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteSkillGroup(response, &metadata)
3368	}
3369	output := &DeleteSkillGroupOutput{}
3370	out.Result = output
3371
3372	var buff [1024]byte
3373	ringBuffer := smithyio.NewRingBuffer(buff[:])
3374
3375	body := io.TeeReader(response.Body, ringBuffer)
3376	decoder := json.NewDecoder(body)
3377	decoder.UseNumber()
3378	var shape interface{}
3379	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3380		var snapshot bytes.Buffer
3381		io.Copy(&snapshot, ringBuffer)
3382		err = &smithy.DeserializationError{
3383			Err:      fmt.Errorf("failed to decode response body, %w", err),
3384			Snapshot: snapshot.Bytes(),
3385		}
3386		return out, metadata, err
3387	}
3388
3389	err = awsAwsjson11_deserializeOpDocumentDeleteSkillGroupOutput(&output, shape)
3390	if err != nil {
3391		var snapshot bytes.Buffer
3392		io.Copy(&snapshot, ringBuffer)
3393		err = &smithy.DeserializationError{
3394			Err:      fmt.Errorf("failed to decode response body, %w", err),
3395			Snapshot: snapshot.Bytes(),
3396		}
3397		return out, metadata, err
3398	}
3399
3400	return out, metadata, err
3401}
3402
3403func awsAwsjson11_deserializeOpErrorDeleteSkillGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3404	var errorBuffer bytes.Buffer
3405	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3406		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3407	}
3408	errorBody := bytes.NewReader(errorBuffer.Bytes())
3409
3410	errorCode := "UnknownError"
3411	errorMessage := errorCode
3412
3413	code := response.Header.Get("X-Amzn-ErrorType")
3414	if len(code) != 0 {
3415		errorCode = restjson.SanitizeErrorCode(code)
3416	}
3417
3418	var buff [1024]byte
3419	ringBuffer := smithyio.NewRingBuffer(buff[:])
3420
3421	body := io.TeeReader(errorBody, ringBuffer)
3422	decoder := json.NewDecoder(body)
3423	decoder.UseNumber()
3424	code, message, err := restjson.GetErrorInfo(decoder)
3425	if err != nil {
3426		var snapshot bytes.Buffer
3427		io.Copy(&snapshot, ringBuffer)
3428		err = &smithy.DeserializationError{
3429			Err:      fmt.Errorf("failed to decode response body, %w", err),
3430			Snapshot: snapshot.Bytes(),
3431		}
3432		return err
3433	}
3434
3435	errorBody.Seek(0, io.SeekStart)
3436	if len(code) != 0 {
3437		errorCode = restjson.SanitizeErrorCode(code)
3438	}
3439	if len(message) != 0 {
3440		errorMessage = message
3441	}
3442
3443	switch {
3444	case strings.EqualFold("ConcurrentModificationException", errorCode):
3445		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3446
3447	case strings.EqualFold("NotFoundException", errorCode):
3448		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
3449
3450	default:
3451		genericError := &smithy.GenericAPIError{
3452			Code:    errorCode,
3453			Message: errorMessage,
3454		}
3455		return genericError
3456
3457	}
3458}
3459
3460type awsAwsjson11_deserializeOpDeleteUser struct {
3461}
3462
3463func (*awsAwsjson11_deserializeOpDeleteUser) ID() string {
3464	return "OperationDeserializer"
3465}
3466
3467func (m *awsAwsjson11_deserializeOpDeleteUser) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3468	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3469) {
3470	out, metadata, err = next.HandleDeserialize(ctx, in)
3471	if err != nil {
3472		return out, metadata, err
3473	}
3474
3475	response, ok := out.RawResponse.(*smithyhttp.Response)
3476	if !ok {
3477		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3478	}
3479
3480	if response.StatusCode < 200 || response.StatusCode >= 300 {
3481		return out, metadata, awsAwsjson11_deserializeOpErrorDeleteUser(response, &metadata)
3482	}
3483	output := &DeleteUserOutput{}
3484	out.Result = output
3485
3486	var buff [1024]byte
3487	ringBuffer := smithyio.NewRingBuffer(buff[:])
3488
3489	body := io.TeeReader(response.Body, ringBuffer)
3490	decoder := json.NewDecoder(body)
3491	decoder.UseNumber()
3492	var shape interface{}
3493	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3494		var snapshot bytes.Buffer
3495		io.Copy(&snapshot, ringBuffer)
3496		err = &smithy.DeserializationError{
3497			Err:      fmt.Errorf("failed to decode response body, %w", err),
3498			Snapshot: snapshot.Bytes(),
3499		}
3500		return out, metadata, err
3501	}
3502
3503	err = awsAwsjson11_deserializeOpDocumentDeleteUserOutput(&output, shape)
3504	if err != nil {
3505		var snapshot bytes.Buffer
3506		io.Copy(&snapshot, ringBuffer)
3507		err = &smithy.DeserializationError{
3508			Err:      fmt.Errorf("failed to decode response body, %w", err),
3509			Snapshot: snapshot.Bytes(),
3510		}
3511		return out, metadata, err
3512	}
3513
3514	return out, metadata, err
3515}
3516
3517func awsAwsjson11_deserializeOpErrorDeleteUser(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3518	var errorBuffer bytes.Buffer
3519	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3520		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3521	}
3522	errorBody := bytes.NewReader(errorBuffer.Bytes())
3523
3524	errorCode := "UnknownError"
3525	errorMessage := errorCode
3526
3527	code := response.Header.Get("X-Amzn-ErrorType")
3528	if len(code) != 0 {
3529		errorCode = restjson.SanitizeErrorCode(code)
3530	}
3531
3532	var buff [1024]byte
3533	ringBuffer := smithyio.NewRingBuffer(buff[:])
3534
3535	body := io.TeeReader(errorBody, ringBuffer)
3536	decoder := json.NewDecoder(body)
3537	decoder.UseNumber()
3538	code, message, err := restjson.GetErrorInfo(decoder)
3539	if err != nil {
3540		var snapshot bytes.Buffer
3541		io.Copy(&snapshot, ringBuffer)
3542		err = &smithy.DeserializationError{
3543			Err:      fmt.Errorf("failed to decode response body, %w", err),
3544			Snapshot: snapshot.Bytes(),
3545		}
3546		return err
3547	}
3548
3549	errorBody.Seek(0, io.SeekStart)
3550	if len(code) != 0 {
3551		errorCode = restjson.SanitizeErrorCode(code)
3552	}
3553	if len(message) != 0 {
3554		errorMessage = message
3555	}
3556
3557	switch {
3558	case strings.EqualFold("ConcurrentModificationException", errorCode):
3559		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3560
3561	case strings.EqualFold("NotFoundException", errorCode):
3562		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
3563
3564	default:
3565		genericError := &smithy.GenericAPIError{
3566			Code:    errorCode,
3567			Message: errorMessage,
3568		}
3569		return genericError
3570
3571	}
3572}
3573
3574type awsAwsjson11_deserializeOpDisassociateContactFromAddressBook struct {
3575}
3576
3577func (*awsAwsjson11_deserializeOpDisassociateContactFromAddressBook) ID() string {
3578	return "OperationDeserializer"
3579}
3580
3581func (m *awsAwsjson11_deserializeOpDisassociateContactFromAddressBook) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3582	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3583) {
3584	out, metadata, err = next.HandleDeserialize(ctx, in)
3585	if err != nil {
3586		return out, metadata, err
3587	}
3588
3589	response, ok := out.RawResponse.(*smithyhttp.Response)
3590	if !ok {
3591		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3592	}
3593
3594	if response.StatusCode < 200 || response.StatusCode >= 300 {
3595		return out, metadata, awsAwsjson11_deserializeOpErrorDisassociateContactFromAddressBook(response, &metadata)
3596	}
3597	output := &DisassociateContactFromAddressBookOutput{}
3598	out.Result = output
3599
3600	var buff [1024]byte
3601	ringBuffer := smithyio.NewRingBuffer(buff[:])
3602
3603	body := io.TeeReader(response.Body, ringBuffer)
3604	decoder := json.NewDecoder(body)
3605	decoder.UseNumber()
3606	var shape interface{}
3607	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3608		var snapshot bytes.Buffer
3609		io.Copy(&snapshot, ringBuffer)
3610		err = &smithy.DeserializationError{
3611			Err:      fmt.Errorf("failed to decode response body, %w", err),
3612			Snapshot: snapshot.Bytes(),
3613		}
3614		return out, metadata, err
3615	}
3616
3617	err = awsAwsjson11_deserializeOpDocumentDisassociateContactFromAddressBookOutput(&output, shape)
3618	if err != nil {
3619		var snapshot bytes.Buffer
3620		io.Copy(&snapshot, ringBuffer)
3621		err = &smithy.DeserializationError{
3622			Err:      fmt.Errorf("failed to decode response body, %w", err),
3623			Snapshot: snapshot.Bytes(),
3624		}
3625		return out, metadata, err
3626	}
3627
3628	return out, metadata, err
3629}
3630
3631func awsAwsjson11_deserializeOpErrorDisassociateContactFromAddressBook(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3632	var errorBuffer bytes.Buffer
3633	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3634		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3635	}
3636	errorBody := bytes.NewReader(errorBuffer.Bytes())
3637
3638	errorCode := "UnknownError"
3639	errorMessage := errorCode
3640
3641	code := response.Header.Get("X-Amzn-ErrorType")
3642	if len(code) != 0 {
3643		errorCode = restjson.SanitizeErrorCode(code)
3644	}
3645
3646	var buff [1024]byte
3647	ringBuffer := smithyio.NewRingBuffer(buff[:])
3648
3649	body := io.TeeReader(errorBody, ringBuffer)
3650	decoder := json.NewDecoder(body)
3651	decoder.UseNumber()
3652	code, message, err := restjson.GetErrorInfo(decoder)
3653	if err != nil {
3654		var snapshot bytes.Buffer
3655		io.Copy(&snapshot, ringBuffer)
3656		err = &smithy.DeserializationError{
3657			Err:      fmt.Errorf("failed to decode response body, %w", err),
3658			Snapshot: snapshot.Bytes(),
3659		}
3660		return err
3661	}
3662
3663	errorBody.Seek(0, io.SeekStart)
3664	if len(code) != 0 {
3665		errorCode = restjson.SanitizeErrorCode(code)
3666	}
3667	if len(message) != 0 {
3668		errorMessage = message
3669	}
3670
3671	switch {
3672	default:
3673		genericError := &smithy.GenericAPIError{
3674			Code:    errorCode,
3675			Message: errorMessage,
3676		}
3677		return genericError
3678
3679	}
3680}
3681
3682type awsAwsjson11_deserializeOpDisassociateDeviceFromRoom struct {
3683}
3684
3685func (*awsAwsjson11_deserializeOpDisassociateDeviceFromRoom) ID() string {
3686	return "OperationDeserializer"
3687}
3688
3689func (m *awsAwsjson11_deserializeOpDisassociateDeviceFromRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3690	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3691) {
3692	out, metadata, err = next.HandleDeserialize(ctx, in)
3693	if err != nil {
3694		return out, metadata, err
3695	}
3696
3697	response, ok := out.RawResponse.(*smithyhttp.Response)
3698	if !ok {
3699		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3700	}
3701
3702	if response.StatusCode < 200 || response.StatusCode >= 300 {
3703		return out, metadata, awsAwsjson11_deserializeOpErrorDisassociateDeviceFromRoom(response, &metadata)
3704	}
3705	output := &DisassociateDeviceFromRoomOutput{}
3706	out.Result = output
3707
3708	var buff [1024]byte
3709	ringBuffer := smithyio.NewRingBuffer(buff[:])
3710
3711	body := io.TeeReader(response.Body, ringBuffer)
3712	decoder := json.NewDecoder(body)
3713	decoder.UseNumber()
3714	var shape interface{}
3715	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3716		var snapshot bytes.Buffer
3717		io.Copy(&snapshot, ringBuffer)
3718		err = &smithy.DeserializationError{
3719			Err:      fmt.Errorf("failed to decode response body, %w", err),
3720			Snapshot: snapshot.Bytes(),
3721		}
3722		return out, metadata, err
3723	}
3724
3725	err = awsAwsjson11_deserializeOpDocumentDisassociateDeviceFromRoomOutput(&output, shape)
3726	if err != nil {
3727		var snapshot bytes.Buffer
3728		io.Copy(&snapshot, ringBuffer)
3729		err = &smithy.DeserializationError{
3730			Err:      fmt.Errorf("failed to decode response body, %w", err),
3731			Snapshot: snapshot.Bytes(),
3732		}
3733		return out, metadata, err
3734	}
3735
3736	return out, metadata, err
3737}
3738
3739func awsAwsjson11_deserializeOpErrorDisassociateDeviceFromRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3740	var errorBuffer bytes.Buffer
3741	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3742		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3743	}
3744	errorBody := bytes.NewReader(errorBuffer.Bytes())
3745
3746	errorCode := "UnknownError"
3747	errorMessage := errorCode
3748
3749	code := response.Header.Get("X-Amzn-ErrorType")
3750	if len(code) != 0 {
3751		errorCode = restjson.SanitizeErrorCode(code)
3752	}
3753
3754	var buff [1024]byte
3755	ringBuffer := smithyio.NewRingBuffer(buff[:])
3756
3757	body := io.TeeReader(errorBody, ringBuffer)
3758	decoder := json.NewDecoder(body)
3759	decoder.UseNumber()
3760	code, message, err := restjson.GetErrorInfo(decoder)
3761	if err != nil {
3762		var snapshot bytes.Buffer
3763		io.Copy(&snapshot, ringBuffer)
3764		err = &smithy.DeserializationError{
3765			Err:      fmt.Errorf("failed to decode response body, %w", err),
3766			Snapshot: snapshot.Bytes(),
3767		}
3768		return err
3769	}
3770
3771	errorBody.Seek(0, io.SeekStart)
3772	if len(code) != 0 {
3773		errorCode = restjson.SanitizeErrorCode(code)
3774	}
3775	if len(message) != 0 {
3776		errorMessage = message
3777	}
3778
3779	switch {
3780	case strings.EqualFold("ConcurrentModificationException", errorCode):
3781		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3782
3783	case strings.EqualFold("DeviceNotRegisteredException", errorCode):
3784		return awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response, errorBody)
3785
3786	default:
3787		genericError := &smithy.GenericAPIError{
3788			Code:    errorCode,
3789			Message: errorMessage,
3790		}
3791		return genericError
3792
3793	}
3794}
3795
3796type awsAwsjson11_deserializeOpDisassociateSkillFromSkillGroup struct {
3797}
3798
3799func (*awsAwsjson11_deserializeOpDisassociateSkillFromSkillGroup) ID() string {
3800	return "OperationDeserializer"
3801}
3802
3803func (m *awsAwsjson11_deserializeOpDisassociateSkillFromSkillGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3804	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3805) {
3806	out, metadata, err = next.HandleDeserialize(ctx, in)
3807	if err != nil {
3808		return out, metadata, err
3809	}
3810
3811	response, ok := out.RawResponse.(*smithyhttp.Response)
3812	if !ok {
3813		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3814	}
3815
3816	if response.StatusCode < 200 || response.StatusCode >= 300 {
3817		return out, metadata, awsAwsjson11_deserializeOpErrorDisassociateSkillFromSkillGroup(response, &metadata)
3818	}
3819	output := &DisassociateSkillFromSkillGroupOutput{}
3820	out.Result = output
3821
3822	var buff [1024]byte
3823	ringBuffer := smithyio.NewRingBuffer(buff[:])
3824
3825	body := io.TeeReader(response.Body, ringBuffer)
3826	decoder := json.NewDecoder(body)
3827	decoder.UseNumber()
3828	var shape interface{}
3829	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3830		var snapshot bytes.Buffer
3831		io.Copy(&snapshot, ringBuffer)
3832		err = &smithy.DeserializationError{
3833			Err:      fmt.Errorf("failed to decode response body, %w", err),
3834			Snapshot: snapshot.Bytes(),
3835		}
3836		return out, metadata, err
3837	}
3838
3839	err = awsAwsjson11_deserializeOpDocumentDisassociateSkillFromSkillGroupOutput(&output, shape)
3840	if err != nil {
3841		var snapshot bytes.Buffer
3842		io.Copy(&snapshot, ringBuffer)
3843		err = &smithy.DeserializationError{
3844			Err:      fmt.Errorf("failed to decode response body, %w", err),
3845			Snapshot: snapshot.Bytes(),
3846		}
3847		return out, metadata, err
3848	}
3849
3850	return out, metadata, err
3851}
3852
3853func awsAwsjson11_deserializeOpErrorDisassociateSkillFromSkillGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3854	var errorBuffer bytes.Buffer
3855	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3856		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3857	}
3858	errorBody := bytes.NewReader(errorBuffer.Bytes())
3859
3860	errorCode := "UnknownError"
3861	errorMessage := errorCode
3862
3863	code := response.Header.Get("X-Amzn-ErrorType")
3864	if len(code) != 0 {
3865		errorCode = restjson.SanitizeErrorCode(code)
3866	}
3867
3868	var buff [1024]byte
3869	ringBuffer := smithyio.NewRingBuffer(buff[:])
3870
3871	body := io.TeeReader(errorBody, ringBuffer)
3872	decoder := json.NewDecoder(body)
3873	decoder.UseNumber()
3874	code, message, err := restjson.GetErrorInfo(decoder)
3875	if err != nil {
3876		var snapshot bytes.Buffer
3877		io.Copy(&snapshot, ringBuffer)
3878		err = &smithy.DeserializationError{
3879			Err:      fmt.Errorf("failed to decode response body, %w", err),
3880			Snapshot: snapshot.Bytes(),
3881		}
3882		return err
3883	}
3884
3885	errorBody.Seek(0, io.SeekStart)
3886	if len(code) != 0 {
3887		errorCode = restjson.SanitizeErrorCode(code)
3888	}
3889	if len(message) != 0 {
3890		errorMessage = message
3891	}
3892
3893	switch {
3894	case strings.EqualFold("ConcurrentModificationException", errorCode):
3895		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
3896
3897	case strings.EqualFold("NotFoundException", errorCode):
3898		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
3899
3900	default:
3901		genericError := &smithy.GenericAPIError{
3902			Code:    errorCode,
3903			Message: errorMessage,
3904		}
3905		return genericError
3906
3907	}
3908}
3909
3910type awsAwsjson11_deserializeOpDisassociateSkillFromUsers struct {
3911}
3912
3913func (*awsAwsjson11_deserializeOpDisassociateSkillFromUsers) ID() string {
3914	return "OperationDeserializer"
3915}
3916
3917func (m *awsAwsjson11_deserializeOpDisassociateSkillFromUsers) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
3918	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
3919) {
3920	out, metadata, err = next.HandleDeserialize(ctx, in)
3921	if err != nil {
3922		return out, metadata, err
3923	}
3924
3925	response, ok := out.RawResponse.(*smithyhttp.Response)
3926	if !ok {
3927		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
3928	}
3929
3930	if response.StatusCode < 200 || response.StatusCode >= 300 {
3931		return out, metadata, awsAwsjson11_deserializeOpErrorDisassociateSkillFromUsers(response, &metadata)
3932	}
3933	output := &DisassociateSkillFromUsersOutput{}
3934	out.Result = output
3935
3936	var buff [1024]byte
3937	ringBuffer := smithyio.NewRingBuffer(buff[:])
3938
3939	body := io.TeeReader(response.Body, ringBuffer)
3940	decoder := json.NewDecoder(body)
3941	decoder.UseNumber()
3942	var shape interface{}
3943	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
3944		var snapshot bytes.Buffer
3945		io.Copy(&snapshot, ringBuffer)
3946		err = &smithy.DeserializationError{
3947			Err:      fmt.Errorf("failed to decode response body, %w", err),
3948			Snapshot: snapshot.Bytes(),
3949		}
3950		return out, metadata, err
3951	}
3952
3953	err = awsAwsjson11_deserializeOpDocumentDisassociateSkillFromUsersOutput(&output, shape)
3954	if err != nil {
3955		var snapshot bytes.Buffer
3956		io.Copy(&snapshot, ringBuffer)
3957		err = &smithy.DeserializationError{
3958			Err:      fmt.Errorf("failed to decode response body, %w", err),
3959			Snapshot: snapshot.Bytes(),
3960		}
3961		return out, metadata, err
3962	}
3963
3964	return out, metadata, err
3965}
3966
3967func awsAwsjson11_deserializeOpErrorDisassociateSkillFromUsers(response *smithyhttp.Response, metadata *middleware.Metadata) error {
3968	var errorBuffer bytes.Buffer
3969	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
3970		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
3971	}
3972	errorBody := bytes.NewReader(errorBuffer.Bytes())
3973
3974	errorCode := "UnknownError"
3975	errorMessage := errorCode
3976
3977	code := response.Header.Get("X-Amzn-ErrorType")
3978	if len(code) != 0 {
3979		errorCode = restjson.SanitizeErrorCode(code)
3980	}
3981
3982	var buff [1024]byte
3983	ringBuffer := smithyio.NewRingBuffer(buff[:])
3984
3985	body := io.TeeReader(errorBody, ringBuffer)
3986	decoder := json.NewDecoder(body)
3987	decoder.UseNumber()
3988	code, message, err := restjson.GetErrorInfo(decoder)
3989	if err != nil {
3990		var snapshot bytes.Buffer
3991		io.Copy(&snapshot, ringBuffer)
3992		err = &smithy.DeserializationError{
3993			Err:      fmt.Errorf("failed to decode response body, %w", err),
3994			Snapshot: snapshot.Bytes(),
3995		}
3996		return err
3997	}
3998
3999	errorBody.Seek(0, io.SeekStart)
4000	if len(code) != 0 {
4001		errorCode = restjson.SanitizeErrorCode(code)
4002	}
4003	if len(message) != 0 {
4004		errorMessage = message
4005	}
4006
4007	switch {
4008	case strings.EqualFold("ConcurrentModificationException", errorCode):
4009		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
4010
4011	case strings.EqualFold("NotFoundException", errorCode):
4012		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4013
4014	default:
4015		genericError := &smithy.GenericAPIError{
4016			Code:    errorCode,
4017			Message: errorMessage,
4018		}
4019		return genericError
4020
4021	}
4022}
4023
4024type awsAwsjson11_deserializeOpDisassociateSkillGroupFromRoom struct {
4025}
4026
4027func (*awsAwsjson11_deserializeOpDisassociateSkillGroupFromRoom) ID() string {
4028	return "OperationDeserializer"
4029}
4030
4031func (m *awsAwsjson11_deserializeOpDisassociateSkillGroupFromRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4032	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4033) {
4034	out, metadata, err = next.HandleDeserialize(ctx, in)
4035	if err != nil {
4036		return out, metadata, err
4037	}
4038
4039	response, ok := out.RawResponse.(*smithyhttp.Response)
4040	if !ok {
4041		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4042	}
4043
4044	if response.StatusCode < 200 || response.StatusCode >= 300 {
4045		return out, metadata, awsAwsjson11_deserializeOpErrorDisassociateSkillGroupFromRoom(response, &metadata)
4046	}
4047	output := &DisassociateSkillGroupFromRoomOutput{}
4048	out.Result = output
4049
4050	var buff [1024]byte
4051	ringBuffer := smithyio.NewRingBuffer(buff[:])
4052
4053	body := io.TeeReader(response.Body, ringBuffer)
4054	decoder := json.NewDecoder(body)
4055	decoder.UseNumber()
4056	var shape interface{}
4057	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4058		var snapshot bytes.Buffer
4059		io.Copy(&snapshot, ringBuffer)
4060		err = &smithy.DeserializationError{
4061			Err:      fmt.Errorf("failed to decode response body, %w", err),
4062			Snapshot: snapshot.Bytes(),
4063		}
4064		return out, metadata, err
4065	}
4066
4067	err = awsAwsjson11_deserializeOpDocumentDisassociateSkillGroupFromRoomOutput(&output, shape)
4068	if err != nil {
4069		var snapshot bytes.Buffer
4070		io.Copy(&snapshot, ringBuffer)
4071		err = &smithy.DeserializationError{
4072			Err:      fmt.Errorf("failed to decode response body, %w", err),
4073			Snapshot: snapshot.Bytes(),
4074		}
4075		return out, metadata, err
4076	}
4077
4078	return out, metadata, err
4079}
4080
4081func awsAwsjson11_deserializeOpErrorDisassociateSkillGroupFromRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4082	var errorBuffer bytes.Buffer
4083	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4084		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4085	}
4086	errorBody := bytes.NewReader(errorBuffer.Bytes())
4087
4088	errorCode := "UnknownError"
4089	errorMessage := errorCode
4090
4091	code := response.Header.Get("X-Amzn-ErrorType")
4092	if len(code) != 0 {
4093		errorCode = restjson.SanitizeErrorCode(code)
4094	}
4095
4096	var buff [1024]byte
4097	ringBuffer := smithyio.NewRingBuffer(buff[:])
4098
4099	body := io.TeeReader(errorBody, ringBuffer)
4100	decoder := json.NewDecoder(body)
4101	decoder.UseNumber()
4102	code, message, err := restjson.GetErrorInfo(decoder)
4103	if err != nil {
4104		var snapshot bytes.Buffer
4105		io.Copy(&snapshot, ringBuffer)
4106		err = &smithy.DeserializationError{
4107			Err:      fmt.Errorf("failed to decode response body, %w", err),
4108			Snapshot: snapshot.Bytes(),
4109		}
4110		return err
4111	}
4112
4113	errorBody.Seek(0, io.SeekStart)
4114	if len(code) != 0 {
4115		errorCode = restjson.SanitizeErrorCode(code)
4116	}
4117	if len(message) != 0 {
4118		errorMessage = message
4119	}
4120
4121	switch {
4122	case strings.EqualFold("ConcurrentModificationException", errorCode):
4123		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
4124
4125	default:
4126		genericError := &smithy.GenericAPIError{
4127			Code:    errorCode,
4128			Message: errorMessage,
4129		}
4130		return genericError
4131
4132	}
4133}
4134
4135type awsAwsjson11_deserializeOpForgetSmartHomeAppliances struct {
4136}
4137
4138func (*awsAwsjson11_deserializeOpForgetSmartHomeAppliances) ID() string {
4139	return "OperationDeserializer"
4140}
4141
4142func (m *awsAwsjson11_deserializeOpForgetSmartHomeAppliances) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4143	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4144) {
4145	out, metadata, err = next.HandleDeserialize(ctx, in)
4146	if err != nil {
4147		return out, metadata, err
4148	}
4149
4150	response, ok := out.RawResponse.(*smithyhttp.Response)
4151	if !ok {
4152		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4153	}
4154
4155	if response.StatusCode < 200 || response.StatusCode >= 300 {
4156		return out, metadata, awsAwsjson11_deserializeOpErrorForgetSmartHomeAppliances(response, &metadata)
4157	}
4158	output := &ForgetSmartHomeAppliancesOutput{}
4159	out.Result = output
4160
4161	var buff [1024]byte
4162	ringBuffer := smithyio.NewRingBuffer(buff[:])
4163
4164	body := io.TeeReader(response.Body, ringBuffer)
4165	decoder := json.NewDecoder(body)
4166	decoder.UseNumber()
4167	var shape interface{}
4168	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4169		var snapshot bytes.Buffer
4170		io.Copy(&snapshot, ringBuffer)
4171		err = &smithy.DeserializationError{
4172			Err:      fmt.Errorf("failed to decode response body, %w", err),
4173			Snapshot: snapshot.Bytes(),
4174		}
4175		return out, metadata, err
4176	}
4177
4178	err = awsAwsjson11_deserializeOpDocumentForgetSmartHomeAppliancesOutput(&output, shape)
4179	if err != nil {
4180		var snapshot bytes.Buffer
4181		io.Copy(&snapshot, ringBuffer)
4182		err = &smithy.DeserializationError{
4183			Err:      fmt.Errorf("failed to decode response body, %w", err),
4184			Snapshot: snapshot.Bytes(),
4185		}
4186		return out, metadata, err
4187	}
4188
4189	return out, metadata, err
4190}
4191
4192func awsAwsjson11_deserializeOpErrorForgetSmartHomeAppliances(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4193	var errorBuffer bytes.Buffer
4194	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4195		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4196	}
4197	errorBody := bytes.NewReader(errorBuffer.Bytes())
4198
4199	errorCode := "UnknownError"
4200	errorMessage := errorCode
4201
4202	code := response.Header.Get("X-Amzn-ErrorType")
4203	if len(code) != 0 {
4204		errorCode = restjson.SanitizeErrorCode(code)
4205	}
4206
4207	var buff [1024]byte
4208	ringBuffer := smithyio.NewRingBuffer(buff[:])
4209
4210	body := io.TeeReader(errorBody, ringBuffer)
4211	decoder := json.NewDecoder(body)
4212	decoder.UseNumber()
4213	code, message, err := restjson.GetErrorInfo(decoder)
4214	if err != nil {
4215		var snapshot bytes.Buffer
4216		io.Copy(&snapshot, ringBuffer)
4217		err = &smithy.DeserializationError{
4218			Err:      fmt.Errorf("failed to decode response body, %w", err),
4219			Snapshot: snapshot.Bytes(),
4220		}
4221		return err
4222	}
4223
4224	errorBody.Seek(0, io.SeekStart)
4225	if len(code) != 0 {
4226		errorCode = restjson.SanitizeErrorCode(code)
4227	}
4228	if len(message) != 0 {
4229		errorMessage = message
4230	}
4231
4232	switch {
4233	case strings.EqualFold("NotFoundException", errorCode):
4234		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4235
4236	default:
4237		genericError := &smithy.GenericAPIError{
4238			Code:    errorCode,
4239			Message: errorMessage,
4240		}
4241		return genericError
4242
4243	}
4244}
4245
4246type awsAwsjson11_deserializeOpGetAddressBook struct {
4247}
4248
4249func (*awsAwsjson11_deserializeOpGetAddressBook) ID() string {
4250	return "OperationDeserializer"
4251}
4252
4253func (m *awsAwsjson11_deserializeOpGetAddressBook) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4254	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4255) {
4256	out, metadata, err = next.HandleDeserialize(ctx, in)
4257	if err != nil {
4258		return out, metadata, err
4259	}
4260
4261	response, ok := out.RawResponse.(*smithyhttp.Response)
4262	if !ok {
4263		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4264	}
4265
4266	if response.StatusCode < 200 || response.StatusCode >= 300 {
4267		return out, metadata, awsAwsjson11_deserializeOpErrorGetAddressBook(response, &metadata)
4268	}
4269	output := &GetAddressBookOutput{}
4270	out.Result = output
4271
4272	var buff [1024]byte
4273	ringBuffer := smithyio.NewRingBuffer(buff[:])
4274
4275	body := io.TeeReader(response.Body, ringBuffer)
4276	decoder := json.NewDecoder(body)
4277	decoder.UseNumber()
4278	var shape interface{}
4279	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4280		var snapshot bytes.Buffer
4281		io.Copy(&snapshot, ringBuffer)
4282		err = &smithy.DeserializationError{
4283			Err:      fmt.Errorf("failed to decode response body, %w", err),
4284			Snapshot: snapshot.Bytes(),
4285		}
4286		return out, metadata, err
4287	}
4288
4289	err = awsAwsjson11_deserializeOpDocumentGetAddressBookOutput(&output, shape)
4290	if err != nil {
4291		var snapshot bytes.Buffer
4292		io.Copy(&snapshot, ringBuffer)
4293		err = &smithy.DeserializationError{
4294			Err:      fmt.Errorf("failed to decode response body, %w", err),
4295			Snapshot: snapshot.Bytes(),
4296		}
4297		return out, metadata, err
4298	}
4299
4300	return out, metadata, err
4301}
4302
4303func awsAwsjson11_deserializeOpErrorGetAddressBook(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4304	var errorBuffer bytes.Buffer
4305	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4306		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4307	}
4308	errorBody := bytes.NewReader(errorBuffer.Bytes())
4309
4310	errorCode := "UnknownError"
4311	errorMessage := errorCode
4312
4313	code := response.Header.Get("X-Amzn-ErrorType")
4314	if len(code) != 0 {
4315		errorCode = restjson.SanitizeErrorCode(code)
4316	}
4317
4318	var buff [1024]byte
4319	ringBuffer := smithyio.NewRingBuffer(buff[:])
4320
4321	body := io.TeeReader(errorBody, ringBuffer)
4322	decoder := json.NewDecoder(body)
4323	decoder.UseNumber()
4324	code, message, err := restjson.GetErrorInfo(decoder)
4325	if err != nil {
4326		var snapshot bytes.Buffer
4327		io.Copy(&snapshot, ringBuffer)
4328		err = &smithy.DeserializationError{
4329			Err:      fmt.Errorf("failed to decode response body, %w", err),
4330			Snapshot: snapshot.Bytes(),
4331		}
4332		return err
4333	}
4334
4335	errorBody.Seek(0, io.SeekStart)
4336	if len(code) != 0 {
4337		errorCode = restjson.SanitizeErrorCode(code)
4338	}
4339	if len(message) != 0 {
4340		errorMessage = message
4341	}
4342
4343	switch {
4344	case strings.EqualFold("NotFoundException", errorCode):
4345		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4346
4347	default:
4348		genericError := &smithy.GenericAPIError{
4349			Code:    errorCode,
4350			Message: errorMessage,
4351		}
4352		return genericError
4353
4354	}
4355}
4356
4357type awsAwsjson11_deserializeOpGetConferencePreference struct {
4358}
4359
4360func (*awsAwsjson11_deserializeOpGetConferencePreference) ID() string {
4361	return "OperationDeserializer"
4362}
4363
4364func (m *awsAwsjson11_deserializeOpGetConferencePreference) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4365	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4366) {
4367	out, metadata, err = next.HandleDeserialize(ctx, in)
4368	if err != nil {
4369		return out, metadata, err
4370	}
4371
4372	response, ok := out.RawResponse.(*smithyhttp.Response)
4373	if !ok {
4374		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4375	}
4376
4377	if response.StatusCode < 200 || response.StatusCode >= 300 {
4378		return out, metadata, awsAwsjson11_deserializeOpErrorGetConferencePreference(response, &metadata)
4379	}
4380	output := &GetConferencePreferenceOutput{}
4381	out.Result = output
4382
4383	var buff [1024]byte
4384	ringBuffer := smithyio.NewRingBuffer(buff[:])
4385
4386	body := io.TeeReader(response.Body, ringBuffer)
4387	decoder := json.NewDecoder(body)
4388	decoder.UseNumber()
4389	var shape interface{}
4390	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4391		var snapshot bytes.Buffer
4392		io.Copy(&snapshot, ringBuffer)
4393		err = &smithy.DeserializationError{
4394			Err:      fmt.Errorf("failed to decode response body, %w", err),
4395			Snapshot: snapshot.Bytes(),
4396		}
4397		return out, metadata, err
4398	}
4399
4400	err = awsAwsjson11_deserializeOpDocumentGetConferencePreferenceOutput(&output, shape)
4401	if err != nil {
4402		var snapshot bytes.Buffer
4403		io.Copy(&snapshot, ringBuffer)
4404		err = &smithy.DeserializationError{
4405			Err:      fmt.Errorf("failed to decode response body, %w", err),
4406			Snapshot: snapshot.Bytes(),
4407		}
4408		return out, metadata, err
4409	}
4410
4411	return out, metadata, err
4412}
4413
4414func awsAwsjson11_deserializeOpErrorGetConferencePreference(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4415	var errorBuffer bytes.Buffer
4416	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4417		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4418	}
4419	errorBody := bytes.NewReader(errorBuffer.Bytes())
4420
4421	errorCode := "UnknownError"
4422	errorMessage := errorCode
4423
4424	code := response.Header.Get("X-Amzn-ErrorType")
4425	if len(code) != 0 {
4426		errorCode = restjson.SanitizeErrorCode(code)
4427	}
4428
4429	var buff [1024]byte
4430	ringBuffer := smithyio.NewRingBuffer(buff[:])
4431
4432	body := io.TeeReader(errorBody, ringBuffer)
4433	decoder := json.NewDecoder(body)
4434	decoder.UseNumber()
4435	code, message, err := restjson.GetErrorInfo(decoder)
4436	if err != nil {
4437		var snapshot bytes.Buffer
4438		io.Copy(&snapshot, ringBuffer)
4439		err = &smithy.DeserializationError{
4440			Err:      fmt.Errorf("failed to decode response body, %w", err),
4441			Snapshot: snapshot.Bytes(),
4442		}
4443		return err
4444	}
4445
4446	errorBody.Seek(0, io.SeekStart)
4447	if len(code) != 0 {
4448		errorCode = restjson.SanitizeErrorCode(code)
4449	}
4450	if len(message) != 0 {
4451		errorMessage = message
4452	}
4453
4454	switch {
4455	case strings.EqualFold("NotFoundException", errorCode):
4456		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4457
4458	default:
4459		genericError := &smithy.GenericAPIError{
4460			Code:    errorCode,
4461			Message: errorMessage,
4462		}
4463		return genericError
4464
4465	}
4466}
4467
4468type awsAwsjson11_deserializeOpGetConferenceProvider struct {
4469}
4470
4471func (*awsAwsjson11_deserializeOpGetConferenceProvider) ID() string {
4472	return "OperationDeserializer"
4473}
4474
4475func (m *awsAwsjson11_deserializeOpGetConferenceProvider) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4476	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4477) {
4478	out, metadata, err = next.HandleDeserialize(ctx, in)
4479	if err != nil {
4480		return out, metadata, err
4481	}
4482
4483	response, ok := out.RawResponse.(*smithyhttp.Response)
4484	if !ok {
4485		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4486	}
4487
4488	if response.StatusCode < 200 || response.StatusCode >= 300 {
4489		return out, metadata, awsAwsjson11_deserializeOpErrorGetConferenceProvider(response, &metadata)
4490	}
4491	output := &GetConferenceProviderOutput{}
4492	out.Result = output
4493
4494	var buff [1024]byte
4495	ringBuffer := smithyio.NewRingBuffer(buff[:])
4496
4497	body := io.TeeReader(response.Body, ringBuffer)
4498	decoder := json.NewDecoder(body)
4499	decoder.UseNumber()
4500	var shape interface{}
4501	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4502		var snapshot bytes.Buffer
4503		io.Copy(&snapshot, ringBuffer)
4504		err = &smithy.DeserializationError{
4505			Err:      fmt.Errorf("failed to decode response body, %w", err),
4506			Snapshot: snapshot.Bytes(),
4507		}
4508		return out, metadata, err
4509	}
4510
4511	err = awsAwsjson11_deserializeOpDocumentGetConferenceProviderOutput(&output, shape)
4512	if err != nil {
4513		var snapshot bytes.Buffer
4514		io.Copy(&snapshot, ringBuffer)
4515		err = &smithy.DeserializationError{
4516			Err:      fmt.Errorf("failed to decode response body, %w", err),
4517			Snapshot: snapshot.Bytes(),
4518		}
4519		return out, metadata, err
4520	}
4521
4522	return out, metadata, err
4523}
4524
4525func awsAwsjson11_deserializeOpErrorGetConferenceProvider(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4526	var errorBuffer bytes.Buffer
4527	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4528		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4529	}
4530	errorBody := bytes.NewReader(errorBuffer.Bytes())
4531
4532	errorCode := "UnknownError"
4533	errorMessage := errorCode
4534
4535	code := response.Header.Get("X-Amzn-ErrorType")
4536	if len(code) != 0 {
4537		errorCode = restjson.SanitizeErrorCode(code)
4538	}
4539
4540	var buff [1024]byte
4541	ringBuffer := smithyio.NewRingBuffer(buff[:])
4542
4543	body := io.TeeReader(errorBody, ringBuffer)
4544	decoder := json.NewDecoder(body)
4545	decoder.UseNumber()
4546	code, message, err := restjson.GetErrorInfo(decoder)
4547	if err != nil {
4548		var snapshot bytes.Buffer
4549		io.Copy(&snapshot, ringBuffer)
4550		err = &smithy.DeserializationError{
4551			Err:      fmt.Errorf("failed to decode response body, %w", err),
4552			Snapshot: snapshot.Bytes(),
4553		}
4554		return err
4555	}
4556
4557	errorBody.Seek(0, io.SeekStart)
4558	if len(code) != 0 {
4559		errorCode = restjson.SanitizeErrorCode(code)
4560	}
4561	if len(message) != 0 {
4562		errorMessage = message
4563	}
4564
4565	switch {
4566	case strings.EqualFold("NotFoundException", errorCode):
4567		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4568
4569	default:
4570		genericError := &smithy.GenericAPIError{
4571			Code:    errorCode,
4572			Message: errorMessage,
4573		}
4574		return genericError
4575
4576	}
4577}
4578
4579type awsAwsjson11_deserializeOpGetContact struct {
4580}
4581
4582func (*awsAwsjson11_deserializeOpGetContact) ID() string {
4583	return "OperationDeserializer"
4584}
4585
4586func (m *awsAwsjson11_deserializeOpGetContact) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4587	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4588) {
4589	out, metadata, err = next.HandleDeserialize(ctx, in)
4590	if err != nil {
4591		return out, metadata, err
4592	}
4593
4594	response, ok := out.RawResponse.(*smithyhttp.Response)
4595	if !ok {
4596		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4597	}
4598
4599	if response.StatusCode < 200 || response.StatusCode >= 300 {
4600		return out, metadata, awsAwsjson11_deserializeOpErrorGetContact(response, &metadata)
4601	}
4602	output := &GetContactOutput{}
4603	out.Result = output
4604
4605	var buff [1024]byte
4606	ringBuffer := smithyio.NewRingBuffer(buff[:])
4607
4608	body := io.TeeReader(response.Body, ringBuffer)
4609	decoder := json.NewDecoder(body)
4610	decoder.UseNumber()
4611	var shape interface{}
4612	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4613		var snapshot bytes.Buffer
4614		io.Copy(&snapshot, ringBuffer)
4615		err = &smithy.DeserializationError{
4616			Err:      fmt.Errorf("failed to decode response body, %w", err),
4617			Snapshot: snapshot.Bytes(),
4618		}
4619		return out, metadata, err
4620	}
4621
4622	err = awsAwsjson11_deserializeOpDocumentGetContactOutput(&output, shape)
4623	if err != nil {
4624		var snapshot bytes.Buffer
4625		io.Copy(&snapshot, ringBuffer)
4626		err = &smithy.DeserializationError{
4627			Err:      fmt.Errorf("failed to decode response body, %w", err),
4628			Snapshot: snapshot.Bytes(),
4629		}
4630		return out, metadata, err
4631	}
4632
4633	return out, metadata, err
4634}
4635
4636func awsAwsjson11_deserializeOpErrorGetContact(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4637	var errorBuffer bytes.Buffer
4638	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4639		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4640	}
4641	errorBody := bytes.NewReader(errorBuffer.Bytes())
4642
4643	errorCode := "UnknownError"
4644	errorMessage := errorCode
4645
4646	code := response.Header.Get("X-Amzn-ErrorType")
4647	if len(code) != 0 {
4648		errorCode = restjson.SanitizeErrorCode(code)
4649	}
4650
4651	var buff [1024]byte
4652	ringBuffer := smithyio.NewRingBuffer(buff[:])
4653
4654	body := io.TeeReader(errorBody, ringBuffer)
4655	decoder := json.NewDecoder(body)
4656	decoder.UseNumber()
4657	code, message, err := restjson.GetErrorInfo(decoder)
4658	if err != nil {
4659		var snapshot bytes.Buffer
4660		io.Copy(&snapshot, ringBuffer)
4661		err = &smithy.DeserializationError{
4662			Err:      fmt.Errorf("failed to decode response body, %w", err),
4663			Snapshot: snapshot.Bytes(),
4664		}
4665		return err
4666	}
4667
4668	errorBody.Seek(0, io.SeekStart)
4669	if len(code) != 0 {
4670		errorCode = restjson.SanitizeErrorCode(code)
4671	}
4672	if len(message) != 0 {
4673		errorMessage = message
4674	}
4675
4676	switch {
4677	case strings.EqualFold("NotFoundException", errorCode):
4678		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4679
4680	default:
4681		genericError := &smithy.GenericAPIError{
4682			Code:    errorCode,
4683			Message: errorMessage,
4684		}
4685		return genericError
4686
4687	}
4688}
4689
4690type awsAwsjson11_deserializeOpGetDevice struct {
4691}
4692
4693func (*awsAwsjson11_deserializeOpGetDevice) ID() string {
4694	return "OperationDeserializer"
4695}
4696
4697func (m *awsAwsjson11_deserializeOpGetDevice) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4698	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4699) {
4700	out, metadata, err = next.HandleDeserialize(ctx, in)
4701	if err != nil {
4702		return out, metadata, err
4703	}
4704
4705	response, ok := out.RawResponse.(*smithyhttp.Response)
4706	if !ok {
4707		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4708	}
4709
4710	if response.StatusCode < 200 || response.StatusCode >= 300 {
4711		return out, metadata, awsAwsjson11_deserializeOpErrorGetDevice(response, &metadata)
4712	}
4713	output := &GetDeviceOutput{}
4714	out.Result = output
4715
4716	var buff [1024]byte
4717	ringBuffer := smithyio.NewRingBuffer(buff[:])
4718
4719	body := io.TeeReader(response.Body, ringBuffer)
4720	decoder := json.NewDecoder(body)
4721	decoder.UseNumber()
4722	var shape interface{}
4723	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4724		var snapshot bytes.Buffer
4725		io.Copy(&snapshot, ringBuffer)
4726		err = &smithy.DeserializationError{
4727			Err:      fmt.Errorf("failed to decode response body, %w", err),
4728			Snapshot: snapshot.Bytes(),
4729		}
4730		return out, metadata, err
4731	}
4732
4733	err = awsAwsjson11_deserializeOpDocumentGetDeviceOutput(&output, shape)
4734	if err != nil {
4735		var snapshot bytes.Buffer
4736		io.Copy(&snapshot, ringBuffer)
4737		err = &smithy.DeserializationError{
4738			Err:      fmt.Errorf("failed to decode response body, %w", err),
4739			Snapshot: snapshot.Bytes(),
4740		}
4741		return out, metadata, err
4742	}
4743
4744	return out, metadata, err
4745}
4746
4747func awsAwsjson11_deserializeOpErrorGetDevice(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4748	var errorBuffer bytes.Buffer
4749	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4750		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4751	}
4752	errorBody := bytes.NewReader(errorBuffer.Bytes())
4753
4754	errorCode := "UnknownError"
4755	errorMessage := errorCode
4756
4757	code := response.Header.Get("X-Amzn-ErrorType")
4758	if len(code) != 0 {
4759		errorCode = restjson.SanitizeErrorCode(code)
4760	}
4761
4762	var buff [1024]byte
4763	ringBuffer := smithyio.NewRingBuffer(buff[:])
4764
4765	body := io.TeeReader(errorBody, ringBuffer)
4766	decoder := json.NewDecoder(body)
4767	decoder.UseNumber()
4768	code, message, err := restjson.GetErrorInfo(decoder)
4769	if err != nil {
4770		var snapshot bytes.Buffer
4771		io.Copy(&snapshot, ringBuffer)
4772		err = &smithy.DeserializationError{
4773			Err:      fmt.Errorf("failed to decode response body, %w", err),
4774			Snapshot: snapshot.Bytes(),
4775		}
4776		return err
4777	}
4778
4779	errorBody.Seek(0, io.SeekStart)
4780	if len(code) != 0 {
4781		errorCode = restjson.SanitizeErrorCode(code)
4782	}
4783	if len(message) != 0 {
4784		errorMessage = message
4785	}
4786
4787	switch {
4788	case strings.EqualFold("NotFoundException", errorCode):
4789		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4790
4791	default:
4792		genericError := &smithy.GenericAPIError{
4793			Code:    errorCode,
4794			Message: errorMessage,
4795		}
4796		return genericError
4797
4798	}
4799}
4800
4801type awsAwsjson11_deserializeOpGetGateway struct {
4802}
4803
4804func (*awsAwsjson11_deserializeOpGetGateway) ID() string {
4805	return "OperationDeserializer"
4806}
4807
4808func (m *awsAwsjson11_deserializeOpGetGateway) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4809	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4810) {
4811	out, metadata, err = next.HandleDeserialize(ctx, in)
4812	if err != nil {
4813		return out, metadata, err
4814	}
4815
4816	response, ok := out.RawResponse.(*smithyhttp.Response)
4817	if !ok {
4818		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4819	}
4820
4821	if response.StatusCode < 200 || response.StatusCode >= 300 {
4822		return out, metadata, awsAwsjson11_deserializeOpErrorGetGateway(response, &metadata)
4823	}
4824	output := &GetGatewayOutput{}
4825	out.Result = output
4826
4827	var buff [1024]byte
4828	ringBuffer := smithyio.NewRingBuffer(buff[:])
4829
4830	body := io.TeeReader(response.Body, ringBuffer)
4831	decoder := json.NewDecoder(body)
4832	decoder.UseNumber()
4833	var shape interface{}
4834	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4835		var snapshot bytes.Buffer
4836		io.Copy(&snapshot, ringBuffer)
4837		err = &smithy.DeserializationError{
4838			Err:      fmt.Errorf("failed to decode response body, %w", err),
4839			Snapshot: snapshot.Bytes(),
4840		}
4841		return out, metadata, err
4842	}
4843
4844	err = awsAwsjson11_deserializeOpDocumentGetGatewayOutput(&output, shape)
4845	if err != nil {
4846		var snapshot bytes.Buffer
4847		io.Copy(&snapshot, ringBuffer)
4848		err = &smithy.DeserializationError{
4849			Err:      fmt.Errorf("failed to decode response body, %w", err),
4850			Snapshot: snapshot.Bytes(),
4851		}
4852		return out, metadata, err
4853	}
4854
4855	return out, metadata, err
4856}
4857
4858func awsAwsjson11_deserializeOpErrorGetGateway(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4859	var errorBuffer bytes.Buffer
4860	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4861		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4862	}
4863	errorBody := bytes.NewReader(errorBuffer.Bytes())
4864
4865	errorCode := "UnknownError"
4866	errorMessage := errorCode
4867
4868	code := response.Header.Get("X-Amzn-ErrorType")
4869	if len(code) != 0 {
4870		errorCode = restjson.SanitizeErrorCode(code)
4871	}
4872
4873	var buff [1024]byte
4874	ringBuffer := smithyio.NewRingBuffer(buff[:])
4875
4876	body := io.TeeReader(errorBody, ringBuffer)
4877	decoder := json.NewDecoder(body)
4878	decoder.UseNumber()
4879	code, message, err := restjson.GetErrorInfo(decoder)
4880	if err != nil {
4881		var snapshot bytes.Buffer
4882		io.Copy(&snapshot, ringBuffer)
4883		err = &smithy.DeserializationError{
4884			Err:      fmt.Errorf("failed to decode response body, %w", err),
4885			Snapshot: snapshot.Bytes(),
4886		}
4887		return err
4888	}
4889
4890	errorBody.Seek(0, io.SeekStart)
4891	if len(code) != 0 {
4892		errorCode = restjson.SanitizeErrorCode(code)
4893	}
4894	if len(message) != 0 {
4895		errorMessage = message
4896	}
4897
4898	switch {
4899	case strings.EqualFold("NotFoundException", errorCode):
4900		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
4901
4902	default:
4903		genericError := &smithy.GenericAPIError{
4904			Code:    errorCode,
4905			Message: errorMessage,
4906		}
4907		return genericError
4908
4909	}
4910}
4911
4912type awsAwsjson11_deserializeOpGetGatewayGroup struct {
4913}
4914
4915func (*awsAwsjson11_deserializeOpGetGatewayGroup) ID() string {
4916	return "OperationDeserializer"
4917}
4918
4919func (m *awsAwsjson11_deserializeOpGetGatewayGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
4920	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
4921) {
4922	out, metadata, err = next.HandleDeserialize(ctx, in)
4923	if err != nil {
4924		return out, metadata, err
4925	}
4926
4927	response, ok := out.RawResponse.(*smithyhttp.Response)
4928	if !ok {
4929		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
4930	}
4931
4932	if response.StatusCode < 200 || response.StatusCode >= 300 {
4933		return out, metadata, awsAwsjson11_deserializeOpErrorGetGatewayGroup(response, &metadata)
4934	}
4935	output := &GetGatewayGroupOutput{}
4936	out.Result = output
4937
4938	var buff [1024]byte
4939	ringBuffer := smithyio.NewRingBuffer(buff[:])
4940
4941	body := io.TeeReader(response.Body, ringBuffer)
4942	decoder := json.NewDecoder(body)
4943	decoder.UseNumber()
4944	var shape interface{}
4945	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
4946		var snapshot bytes.Buffer
4947		io.Copy(&snapshot, ringBuffer)
4948		err = &smithy.DeserializationError{
4949			Err:      fmt.Errorf("failed to decode response body, %w", err),
4950			Snapshot: snapshot.Bytes(),
4951		}
4952		return out, metadata, err
4953	}
4954
4955	err = awsAwsjson11_deserializeOpDocumentGetGatewayGroupOutput(&output, shape)
4956	if err != nil {
4957		var snapshot bytes.Buffer
4958		io.Copy(&snapshot, ringBuffer)
4959		err = &smithy.DeserializationError{
4960			Err:      fmt.Errorf("failed to decode response body, %w", err),
4961			Snapshot: snapshot.Bytes(),
4962		}
4963		return out, metadata, err
4964	}
4965
4966	return out, metadata, err
4967}
4968
4969func awsAwsjson11_deserializeOpErrorGetGatewayGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
4970	var errorBuffer bytes.Buffer
4971	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
4972		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
4973	}
4974	errorBody := bytes.NewReader(errorBuffer.Bytes())
4975
4976	errorCode := "UnknownError"
4977	errorMessage := errorCode
4978
4979	code := response.Header.Get("X-Amzn-ErrorType")
4980	if len(code) != 0 {
4981		errorCode = restjson.SanitizeErrorCode(code)
4982	}
4983
4984	var buff [1024]byte
4985	ringBuffer := smithyio.NewRingBuffer(buff[:])
4986
4987	body := io.TeeReader(errorBody, ringBuffer)
4988	decoder := json.NewDecoder(body)
4989	decoder.UseNumber()
4990	code, message, err := restjson.GetErrorInfo(decoder)
4991	if err != nil {
4992		var snapshot bytes.Buffer
4993		io.Copy(&snapshot, ringBuffer)
4994		err = &smithy.DeserializationError{
4995			Err:      fmt.Errorf("failed to decode response body, %w", err),
4996			Snapshot: snapshot.Bytes(),
4997		}
4998		return err
4999	}
5000
5001	errorBody.Seek(0, io.SeekStart)
5002	if len(code) != 0 {
5003		errorCode = restjson.SanitizeErrorCode(code)
5004	}
5005	if len(message) != 0 {
5006		errorMessage = message
5007	}
5008
5009	switch {
5010	case strings.EqualFold("NotFoundException", errorCode):
5011		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5012
5013	default:
5014		genericError := &smithy.GenericAPIError{
5015			Code:    errorCode,
5016			Message: errorMessage,
5017		}
5018		return genericError
5019
5020	}
5021}
5022
5023type awsAwsjson11_deserializeOpGetInvitationConfiguration struct {
5024}
5025
5026func (*awsAwsjson11_deserializeOpGetInvitationConfiguration) ID() string {
5027	return "OperationDeserializer"
5028}
5029
5030func (m *awsAwsjson11_deserializeOpGetInvitationConfiguration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5031	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5032) {
5033	out, metadata, err = next.HandleDeserialize(ctx, in)
5034	if err != nil {
5035		return out, metadata, err
5036	}
5037
5038	response, ok := out.RawResponse.(*smithyhttp.Response)
5039	if !ok {
5040		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5041	}
5042
5043	if response.StatusCode < 200 || response.StatusCode >= 300 {
5044		return out, metadata, awsAwsjson11_deserializeOpErrorGetInvitationConfiguration(response, &metadata)
5045	}
5046	output := &GetInvitationConfigurationOutput{}
5047	out.Result = output
5048
5049	var buff [1024]byte
5050	ringBuffer := smithyio.NewRingBuffer(buff[:])
5051
5052	body := io.TeeReader(response.Body, ringBuffer)
5053	decoder := json.NewDecoder(body)
5054	decoder.UseNumber()
5055	var shape interface{}
5056	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5057		var snapshot bytes.Buffer
5058		io.Copy(&snapshot, ringBuffer)
5059		err = &smithy.DeserializationError{
5060			Err:      fmt.Errorf("failed to decode response body, %w", err),
5061			Snapshot: snapshot.Bytes(),
5062		}
5063		return out, metadata, err
5064	}
5065
5066	err = awsAwsjson11_deserializeOpDocumentGetInvitationConfigurationOutput(&output, shape)
5067	if err != nil {
5068		var snapshot bytes.Buffer
5069		io.Copy(&snapshot, ringBuffer)
5070		err = &smithy.DeserializationError{
5071			Err:      fmt.Errorf("failed to decode response body, %w", err),
5072			Snapshot: snapshot.Bytes(),
5073		}
5074		return out, metadata, err
5075	}
5076
5077	return out, metadata, err
5078}
5079
5080func awsAwsjson11_deserializeOpErrorGetInvitationConfiguration(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5081	var errorBuffer bytes.Buffer
5082	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5083		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5084	}
5085	errorBody := bytes.NewReader(errorBuffer.Bytes())
5086
5087	errorCode := "UnknownError"
5088	errorMessage := errorCode
5089
5090	code := response.Header.Get("X-Amzn-ErrorType")
5091	if len(code) != 0 {
5092		errorCode = restjson.SanitizeErrorCode(code)
5093	}
5094
5095	var buff [1024]byte
5096	ringBuffer := smithyio.NewRingBuffer(buff[:])
5097
5098	body := io.TeeReader(errorBody, ringBuffer)
5099	decoder := json.NewDecoder(body)
5100	decoder.UseNumber()
5101	code, message, err := restjson.GetErrorInfo(decoder)
5102	if err != nil {
5103		var snapshot bytes.Buffer
5104		io.Copy(&snapshot, ringBuffer)
5105		err = &smithy.DeserializationError{
5106			Err:      fmt.Errorf("failed to decode response body, %w", err),
5107			Snapshot: snapshot.Bytes(),
5108		}
5109		return err
5110	}
5111
5112	errorBody.Seek(0, io.SeekStart)
5113	if len(code) != 0 {
5114		errorCode = restjson.SanitizeErrorCode(code)
5115	}
5116	if len(message) != 0 {
5117		errorMessage = message
5118	}
5119
5120	switch {
5121	case strings.EqualFold("NotFoundException", errorCode):
5122		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5123
5124	default:
5125		genericError := &smithy.GenericAPIError{
5126			Code:    errorCode,
5127			Message: errorMessage,
5128		}
5129		return genericError
5130
5131	}
5132}
5133
5134type awsAwsjson11_deserializeOpGetNetworkProfile struct {
5135}
5136
5137func (*awsAwsjson11_deserializeOpGetNetworkProfile) ID() string {
5138	return "OperationDeserializer"
5139}
5140
5141func (m *awsAwsjson11_deserializeOpGetNetworkProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5142	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5143) {
5144	out, metadata, err = next.HandleDeserialize(ctx, in)
5145	if err != nil {
5146		return out, metadata, err
5147	}
5148
5149	response, ok := out.RawResponse.(*smithyhttp.Response)
5150	if !ok {
5151		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5152	}
5153
5154	if response.StatusCode < 200 || response.StatusCode >= 300 {
5155		return out, metadata, awsAwsjson11_deserializeOpErrorGetNetworkProfile(response, &metadata)
5156	}
5157	output := &GetNetworkProfileOutput{}
5158	out.Result = output
5159
5160	var buff [1024]byte
5161	ringBuffer := smithyio.NewRingBuffer(buff[:])
5162
5163	body := io.TeeReader(response.Body, ringBuffer)
5164	decoder := json.NewDecoder(body)
5165	decoder.UseNumber()
5166	var shape interface{}
5167	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5168		var snapshot bytes.Buffer
5169		io.Copy(&snapshot, ringBuffer)
5170		err = &smithy.DeserializationError{
5171			Err:      fmt.Errorf("failed to decode response body, %w", err),
5172			Snapshot: snapshot.Bytes(),
5173		}
5174		return out, metadata, err
5175	}
5176
5177	err = awsAwsjson11_deserializeOpDocumentGetNetworkProfileOutput(&output, shape)
5178	if err != nil {
5179		var snapshot bytes.Buffer
5180		io.Copy(&snapshot, ringBuffer)
5181		err = &smithy.DeserializationError{
5182			Err:      fmt.Errorf("failed to decode response body, %w", err),
5183			Snapshot: snapshot.Bytes(),
5184		}
5185		return out, metadata, err
5186	}
5187
5188	return out, metadata, err
5189}
5190
5191func awsAwsjson11_deserializeOpErrorGetNetworkProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5192	var errorBuffer bytes.Buffer
5193	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5194		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5195	}
5196	errorBody := bytes.NewReader(errorBuffer.Bytes())
5197
5198	errorCode := "UnknownError"
5199	errorMessage := errorCode
5200
5201	code := response.Header.Get("X-Amzn-ErrorType")
5202	if len(code) != 0 {
5203		errorCode = restjson.SanitizeErrorCode(code)
5204	}
5205
5206	var buff [1024]byte
5207	ringBuffer := smithyio.NewRingBuffer(buff[:])
5208
5209	body := io.TeeReader(errorBody, ringBuffer)
5210	decoder := json.NewDecoder(body)
5211	decoder.UseNumber()
5212	code, message, err := restjson.GetErrorInfo(decoder)
5213	if err != nil {
5214		var snapshot bytes.Buffer
5215		io.Copy(&snapshot, ringBuffer)
5216		err = &smithy.DeserializationError{
5217			Err:      fmt.Errorf("failed to decode response body, %w", err),
5218			Snapshot: snapshot.Bytes(),
5219		}
5220		return err
5221	}
5222
5223	errorBody.Seek(0, io.SeekStart)
5224	if len(code) != 0 {
5225		errorCode = restjson.SanitizeErrorCode(code)
5226	}
5227	if len(message) != 0 {
5228		errorMessage = message
5229	}
5230
5231	switch {
5232	case strings.EqualFold("InvalidSecretsManagerResourceException", errorCode):
5233		return awsAwsjson11_deserializeErrorInvalidSecretsManagerResourceException(response, errorBody)
5234
5235	case strings.EqualFold("NotFoundException", errorCode):
5236		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5237
5238	default:
5239		genericError := &smithy.GenericAPIError{
5240			Code:    errorCode,
5241			Message: errorMessage,
5242		}
5243		return genericError
5244
5245	}
5246}
5247
5248type awsAwsjson11_deserializeOpGetProfile struct {
5249}
5250
5251func (*awsAwsjson11_deserializeOpGetProfile) ID() string {
5252	return "OperationDeserializer"
5253}
5254
5255func (m *awsAwsjson11_deserializeOpGetProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5256	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5257) {
5258	out, metadata, err = next.HandleDeserialize(ctx, in)
5259	if err != nil {
5260		return out, metadata, err
5261	}
5262
5263	response, ok := out.RawResponse.(*smithyhttp.Response)
5264	if !ok {
5265		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5266	}
5267
5268	if response.StatusCode < 200 || response.StatusCode >= 300 {
5269		return out, metadata, awsAwsjson11_deserializeOpErrorGetProfile(response, &metadata)
5270	}
5271	output := &GetProfileOutput{}
5272	out.Result = output
5273
5274	var buff [1024]byte
5275	ringBuffer := smithyio.NewRingBuffer(buff[:])
5276
5277	body := io.TeeReader(response.Body, ringBuffer)
5278	decoder := json.NewDecoder(body)
5279	decoder.UseNumber()
5280	var shape interface{}
5281	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5282		var snapshot bytes.Buffer
5283		io.Copy(&snapshot, ringBuffer)
5284		err = &smithy.DeserializationError{
5285			Err:      fmt.Errorf("failed to decode response body, %w", err),
5286			Snapshot: snapshot.Bytes(),
5287		}
5288		return out, metadata, err
5289	}
5290
5291	err = awsAwsjson11_deserializeOpDocumentGetProfileOutput(&output, shape)
5292	if err != nil {
5293		var snapshot bytes.Buffer
5294		io.Copy(&snapshot, ringBuffer)
5295		err = &smithy.DeserializationError{
5296			Err:      fmt.Errorf("failed to decode response body, %w", err),
5297			Snapshot: snapshot.Bytes(),
5298		}
5299		return out, metadata, err
5300	}
5301
5302	return out, metadata, err
5303}
5304
5305func awsAwsjson11_deserializeOpErrorGetProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5306	var errorBuffer bytes.Buffer
5307	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5308		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5309	}
5310	errorBody := bytes.NewReader(errorBuffer.Bytes())
5311
5312	errorCode := "UnknownError"
5313	errorMessage := errorCode
5314
5315	code := response.Header.Get("X-Amzn-ErrorType")
5316	if len(code) != 0 {
5317		errorCode = restjson.SanitizeErrorCode(code)
5318	}
5319
5320	var buff [1024]byte
5321	ringBuffer := smithyio.NewRingBuffer(buff[:])
5322
5323	body := io.TeeReader(errorBody, ringBuffer)
5324	decoder := json.NewDecoder(body)
5325	decoder.UseNumber()
5326	code, message, err := restjson.GetErrorInfo(decoder)
5327	if err != nil {
5328		var snapshot bytes.Buffer
5329		io.Copy(&snapshot, ringBuffer)
5330		err = &smithy.DeserializationError{
5331			Err:      fmt.Errorf("failed to decode response body, %w", err),
5332			Snapshot: snapshot.Bytes(),
5333		}
5334		return err
5335	}
5336
5337	errorBody.Seek(0, io.SeekStart)
5338	if len(code) != 0 {
5339		errorCode = restjson.SanitizeErrorCode(code)
5340	}
5341	if len(message) != 0 {
5342		errorMessage = message
5343	}
5344
5345	switch {
5346	case strings.EqualFold("NotFoundException", errorCode):
5347		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5348
5349	default:
5350		genericError := &smithy.GenericAPIError{
5351			Code:    errorCode,
5352			Message: errorMessage,
5353		}
5354		return genericError
5355
5356	}
5357}
5358
5359type awsAwsjson11_deserializeOpGetRoom struct {
5360}
5361
5362func (*awsAwsjson11_deserializeOpGetRoom) ID() string {
5363	return "OperationDeserializer"
5364}
5365
5366func (m *awsAwsjson11_deserializeOpGetRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5367	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5368) {
5369	out, metadata, err = next.HandleDeserialize(ctx, in)
5370	if err != nil {
5371		return out, metadata, err
5372	}
5373
5374	response, ok := out.RawResponse.(*smithyhttp.Response)
5375	if !ok {
5376		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5377	}
5378
5379	if response.StatusCode < 200 || response.StatusCode >= 300 {
5380		return out, metadata, awsAwsjson11_deserializeOpErrorGetRoom(response, &metadata)
5381	}
5382	output := &GetRoomOutput{}
5383	out.Result = output
5384
5385	var buff [1024]byte
5386	ringBuffer := smithyio.NewRingBuffer(buff[:])
5387
5388	body := io.TeeReader(response.Body, ringBuffer)
5389	decoder := json.NewDecoder(body)
5390	decoder.UseNumber()
5391	var shape interface{}
5392	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5393		var snapshot bytes.Buffer
5394		io.Copy(&snapshot, ringBuffer)
5395		err = &smithy.DeserializationError{
5396			Err:      fmt.Errorf("failed to decode response body, %w", err),
5397			Snapshot: snapshot.Bytes(),
5398		}
5399		return out, metadata, err
5400	}
5401
5402	err = awsAwsjson11_deserializeOpDocumentGetRoomOutput(&output, shape)
5403	if err != nil {
5404		var snapshot bytes.Buffer
5405		io.Copy(&snapshot, ringBuffer)
5406		err = &smithy.DeserializationError{
5407			Err:      fmt.Errorf("failed to decode response body, %w", err),
5408			Snapshot: snapshot.Bytes(),
5409		}
5410		return out, metadata, err
5411	}
5412
5413	return out, metadata, err
5414}
5415
5416func awsAwsjson11_deserializeOpErrorGetRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5417	var errorBuffer bytes.Buffer
5418	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5419		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5420	}
5421	errorBody := bytes.NewReader(errorBuffer.Bytes())
5422
5423	errorCode := "UnknownError"
5424	errorMessage := errorCode
5425
5426	code := response.Header.Get("X-Amzn-ErrorType")
5427	if len(code) != 0 {
5428		errorCode = restjson.SanitizeErrorCode(code)
5429	}
5430
5431	var buff [1024]byte
5432	ringBuffer := smithyio.NewRingBuffer(buff[:])
5433
5434	body := io.TeeReader(errorBody, ringBuffer)
5435	decoder := json.NewDecoder(body)
5436	decoder.UseNumber()
5437	code, message, err := restjson.GetErrorInfo(decoder)
5438	if err != nil {
5439		var snapshot bytes.Buffer
5440		io.Copy(&snapshot, ringBuffer)
5441		err = &smithy.DeserializationError{
5442			Err:      fmt.Errorf("failed to decode response body, %w", err),
5443			Snapshot: snapshot.Bytes(),
5444		}
5445		return err
5446	}
5447
5448	errorBody.Seek(0, io.SeekStart)
5449	if len(code) != 0 {
5450		errorCode = restjson.SanitizeErrorCode(code)
5451	}
5452	if len(message) != 0 {
5453		errorMessage = message
5454	}
5455
5456	switch {
5457	case strings.EqualFold("NotFoundException", errorCode):
5458		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5459
5460	default:
5461		genericError := &smithy.GenericAPIError{
5462			Code:    errorCode,
5463			Message: errorMessage,
5464		}
5465		return genericError
5466
5467	}
5468}
5469
5470type awsAwsjson11_deserializeOpGetRoomSkillParameter struct {
5471}
5472
5473func (*awsAwsjson11_deserializeOpGetRoomSkillParameter) ID() string {
5474	return "OperationDeserializer"
5475}
5476
5477func (m *awsAwsjson11_deserializeOpGetRoomSkillParameter) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5478	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5479) {
5480	out, metadata, err = next.HandleDeserialize(ctx, in)
5481	if err != nil {
5482		return out, metadata, err
5483	}
5484
5485	response, ok := out.RawResponse.(*smithyhttp.Response)
5486	if !ok {
5487		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5488	}
5489
5490	if response.StatusCode < 200 || response.StatusCode >= 300 {
5491		return out, metadata, awsAwsjson11_deserializeOpErrorGetRoomSkillParameter(response, &metadata)
5492	}
5493	output := &GetRoomSkillParameterOutput{}
5494	out.Result = output
5495
5496	var buff [1024]byte
5497	ringBuffer := smithyio.NewRingBuffer(buff[:])
5498
5499	body := io.TeeReader(response.Body, ringBuffer)
5500	decoder := json.NewDecoder(body)
5501	decoder.UseNumber()
5502	var shape interface{}
5503	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5504		var snapshot bytes.Buffer
5505		io.Copy(&snapshot, ringBuffer)
5506		err = &smithy.DeserializationError{
5507			Err:      fmt.Errorf("failed to decode response body, %w", err),
5508			Snapshot: snapshot.Bytes(),
5509		}
5510		return out, metadata, err
5511	}
5512
5513	err = awsAwsjson11_deserializeOpDocumentGetRoomSkillParameterOutput(&output, shape)
5514	if err != nil {
5515		var snapshot bytes.Buffer
5516		io.Copy(&snapshot, ringBuffer)
5517		err = &smithy.DeserializationError{
5518			Err:      fmt.Errorf("failed to decode response body, %w", err),
5519			Snapshot: snapshot.Bytes(),
5520		}
5521		return out, metadata, err
5522	}
5523
5524	return out, metadata, err
5525}
5526
5527func awsAwsjson11_deserializeOpErrorGetRoomSkillParameter(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5528	var errorBuffer bytes.Buffer
5529	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5530		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5531	}
5532	errorBody := bytes.NewReader(errorBuffer.Bytes())
5533
5534	errorCode := "UnknownError"
5535	errorMessage := errorCode
5536
5537	code := response.Header.Get("X-Amzn-ErrorType")
5538	if len(code) != 0 {
5539		errorCode = restjson.SanitizeErrorCode(code)
5540	}
5541
5542	var buff [1024]byte
5543	ringBuffer := smithyio.NewRingBuffer(buff[:])
5544
5545	body := io.TeeReader(errorBody, ringBuffer)
5546	decoder := json.NewDecoder(body)
5547	decoder.UseNumber()
5548	code, message, err := restjson.GetErrorInfo(decoder)
5549	if err != nil {
5550		var snapshot bytes.Buffer
5551		io.Copy(&snapshot, ringBuffer)
5552		err = &smithy.DeserializationError{
5553			Err:      fmt.Errorf("failed to decode response body, %w", err),
5554			Snapshot: snapshot.Bytes(),
5555		}
5556		return err
5557	}
5558
5559	errorBody.Seek(0, io.SeekStart)
5560	if len(code) != 0 {
5561		errorCode = restjson.SanitizeErrorCode(code)
5562	}
5563	if len(message) != 0 {
5564		errorMessage = message
5565	}
5566
5567	switch {
5568	case strings.EqualFold("NotFoundException", errorCode):
5569		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5570
5571	default:
5572		genericError := &smithy.GenericAPIError{
5573			Code:    errorCode,
5574			Message: errorMessage,
5575		}
5576		return genericError
5577
5578	}
5579}
5580
5581type awsAwsjson11_deserializeOpGetSkillGroup struct {
5582}
5583
5584func (*awsAwsjson11_deserializeOpGetSkillGroup) ID() string {
5585	return "OperationDeserializer"
5586}
5587
5588func (m *awsAwsjson11_deserializeOpGetSkillGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5589	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5590) {
5591	out, metadata, err = next.HandleDeserialize(ctx, in)
5592	if err != nil {
5593		return out, metadata, err
5594	}
5595
5596	response, ok := out.RawResponse.(*smithyhttp.Response)
5597	if !ok {
5598		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5599	}
5600
5601	if response.StatusCode < 200 || response.StatusCode >= 300 {
5602		return out, metadata, awsAwsjson11_deserializeOpErrorGetSkillGroup(response, &metadata)
5603	}
5604	output := &GetSkillGroupOutput{}
5605	out.Result = output
5606
5607	var buff [1024]byte
5608	ringBuffer := smithyio.NewRingBuffer(buff[:])
5609
5610	body := io.TeeReader(response.Body, ringBuffer)
5611	decoder := json.NewDecoder(body)
5612	decoder.UseNumber()
5613	var shape interface{}
5614	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5615		var snapshot bytes.Buffer
5616		io.Copy(&snapshot, ringBuffer)
5617		err = &smithy.DeserializationError{
5618			Err:      fmt.Errorf("failed to decode response body, %w", err),
5619			Snapshot: snapshot.Bytes(),
5620		}
5621		return out, metadata, err
5622	}
5623
5624	err = awsAwsjson11_deserializeOpDocumentGetSkillGroupOutput(&output, shape)
5625	if err != nil {
5626		var snapshot bytes.Buffer
5627		io.Copy(&snapshot, ringBuffer)
5628		err = &smithy.DeserializationError{
5629			Err:      fmt.Errorf("failed to decode response body, %w", err),
5630			Snapshot: snapshot.Bytes(),
5631		}
5632		return out, metadata, err
5633	}
5634
5635	return out, metadata, err
5636}
5637
5638func awsAwsjson11_deserializeOpErrorGetSkillGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5639	var errorBuffer bytes.Buffer
5640	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5641		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5642	}
5643	errorBody := bytes.NewReader(errorBuffer.Bytes())
5644
5645	errorCode := "UnknownError"
5646	errorMessage := errorCode
5647
5648	code := response.Header.Get("X-Amzn-ErrorType")
5649	if len(code) != 0 {
5650		errorCode = restjson.SanitizeErrorCode(code)
5651	}
5652
5653	var buff [1024]byte
5654	ringBuffer := smithyio.NewRingBuffer(buff[:])
5655
5656	body := io.TeeReader(errorBody, ringBuffer)
5657	decoder := json.NewDecoder(body)
5658	decoder.UseNumber()
5659	code, message, err := restjson.GetErrorInfo(decoder)
5660	if err != nil {
5661		var snapshot bytes.Buffer
5662		io.Copy(&snapshot, ringBuffer)
5663		err = &smithy.DeserializationError{
5664			Err:      fmt.Errorf("failed to decode response body, %w", err),
5665			Snapshot: snapshot.Bytes(),
5666		}
5667		return err
5668	}
5669
5670	errorBody.Seek(0, io.SeekStart)
5671	if len(code) != 0 {
5672		errorCode = restjson.SanitizeErrorCode(code)
5673	}
5674	if len(message) != 0 {
5675		errorMessage = message
5676	}
5677
5678	switch {
5679	case strings.EqualFold("NotFoundException", errorCode):
5680		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
5681
5682	default:
5683		genericError := &smithy.GenericAPIError{
5684			Code:    errorCode,
5685			Message: errorMessage,
5686		}
5687		return genericError
5688
5689	}
5690}
5691
5692type awsAwsjson11_deserializeOpListBusinessReportSchedules struct {
5693}
5694
5695func (*awsAwsjson11_deserializeOpListBusinessReportSchedules) ID() string {
5696	return "OperationDeserializer"
5697}
5698
5699func (m *awsAwsjson11_deserializeOpListBusinessReportSchedules) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5700	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5701) {
5702	out, metadata, err = next.HandleDeserialize(ctx, in)
5703	if err != nil {
5704		return out, metadata, err
5705	}
5706
5707	response, ok := out.RawResponse.(*smithyhttp.Response)
5708	if !ok {
5709		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5710	}
5711
5712	if response.StatusCode < 200 || response.StatusCode >= 300 {
5713		return out, metadata, awsAwsjson11_deserializeOpErrorListBusinessReportSchedules(response, &metadata)
5714	}
5715	output := &ListBusinessReportSchedulesOutput{}
5716	out.Result = output
5717
5718	var buff [1024]byte
5719	ringBuffer := smithyio.NewRingBuffer(buff[:])
5720
5721	body := io.TeeReader(response.Body, ringBuffer)
5722	decoder := json.NewDecoder(body)
5723	decoder.UseNumber()
5724	var shape interface{}
5725	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5726		var snapshot bytes.Buffer
5727		io.Copy(&snapshot, ringBuffer)
5728		err = &smithy.DeserializationError{
5729			Err:      fmt.Errorf("failed to decode response body, %w", err),
5730			Snapshot: snapshot.Bytes(),
5731		}
5732		return out, metadata, err
5733	}
5734
5735	err = awsAwsjson11_deserializeOpDocumentListBusinessReportSchedulesOutput(&output, shape)
5736	if err != nil {
5737		var snapshot bytes.Buffer
5738		io.Copy(&snapshot, ringBuffer)
5739		err = &smithy.DeserializationError{
5740			Err:      fmt.Errorf("failed to decode response body, %w", err),
5741			Snapshot: snapshot.Bytes(),
5742		}
5743		return out, metadata, err
5744	}
5745
5746	return out, metadata, err
5747}
5748
5749func awsAwsjson11_deserializeOpErrorListBusinessReportSchedules(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5750	var errorBuffer bytes.Buffer
5751	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5752		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5753	}
5754	errorBody := bytes.NewReader(errorBuffer.Bytes())
5755
5756	errorCode := "UnknownError"
5757	errorMessage := errorCode
5758
5759	code := response.Header.Get("X-Amzn-ErrorType")
5760	if len(code) != 0 {
5761		errorCode = restjson.SanitizeErrorCode(code)
5762	}
5763
5764	var buff [1024]byte
5765	ringBuffer := smithyio.NewRingBuffer(buff[:])
5766
5767	body := io.TeeReader(errorBody, ringBuffer)
5768	decoder := json.NewDecoder(body)
5769	decoder.UseNumber()
5770	code, message, err := restjson.GetErrorInfo(decoder)
5771	if err != nil {
5772		var snapshot bytes.Buffer
5773		io.Copy(&snapshot, ringBuffer)
5774		err = &smithy.DeserializationError{
5775			Err:      fmt.Errorf("failed to decode response body, %w", err),
5776			Snapshot: snapshot.Bytes(),
5777		}
5778		return err
5779	}
5780
5781	errorBody.Seek(0, io.SeekStart)
5782	if len(code) != 0 {
5783		errorCode = restjson.SanitizeErrorCode(code)
5784	}
5785	if len(message) != 0 {
5786		errorMessage = message
5787	}
5788
5789	switch {
5790	default:
5791		genericError := &smithy.GenericAPIError{
5792			Code:    errorCode,
5793			Message: errorMessage,
5794		}
5795		return genericError
5796
5797	}
5798}
5799
5800type awsAwsjson11_deserializeOpListConferenceProviders struct {
5801}
5802
5803func (*awsAwsjson11_deserializeOpListConferenceProviders) ID() string {
5804	return "OperationDeserializer"
5805}
5806
5807func (m *awsAwsjson11_deserializeOpListConferenceProviders) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5808	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5809) {
5810	out, metadata, err = next.HandleDeserialize(ctx, in)
5811	if err != nil {
5812		return out, metadata, err
5813	}
5814
5815	response, ok := out.RawResponse.(*smithyhttp.Response)
5816	if !ok {
5817		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5818	}
5819
5820	if response.StatusCode < 200 || response.StatusCode >= 300 {
5821		return out, metadata, awsAwsjson11_deserializeOpErrorListConferenceProviders(response, &metadata)
5822	}
5823	output := &ListConferenceProvidersOutput{}
5824	out.Result = output
5825
5826	var buff [1024]byte
5827	ringBuffer := smithyio.NewRingBuffer(buff[:])
5828
5829	body := io.TeeReader(response.Body, ringBuffer)
5830	decoder := json.NewDecoder(body)
5831	decoder.UseNumber()
5832	var shape interface{}
5833	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5834		var snapshot bytes.Buffer
5835		io.Copy(&snapshot, ringBuffer)
5836		err = &smithy.DeserializationError{
5837			Err:      fmt.Errorf("failed to decode response body, %w", err),
5838			Snapshot: snapshot.Bytes(),
5839		}
5840		return out, metadata, err
5841	}
5842
5843	err = awsAwsjson11_deserializeOpDocumentListConferenceProvidersOutput(&output, shape)
5844	if err != nil {
5845		var snapshot bytes.Buffer
5846		io.Copy(&snapshot, ringBuffer)
5847		err = &smithy.DeserializationError{
5848			Err:      fmt.Errorf("failed to decode response body, %w", err),
5849			Snapshot: snapshot.Bytes(),
5850		}
5851		return out, metadata, err
5852	}
5853
5854	return out, metadata, err
5855}
5856
5857func awsAwsjson11_deserializeOpErrorListConferenceProviders(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5858	var errorBuffer bytes.Buffer
5859	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5860		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5861	}
5862	errorBody := bytes.NewReader(errorBuffer.Bytes())
5863
5864	errorCode := "UnknownError"
5865	errorMessage := errorCode
5866
5867	code := response.Header.Get("X-Amzn-ErrorType")
5868	if len(code) != 0 {
5869		errorCode = restjson.SanitizeErrorCode(code)
5870	}
5871
5872	var buff [1024]byte
5873	ringBuffer := smithyio.NewRingBuffer(buff[:])
5874
5875	body := io.TeeReader(errorBody, ringBuffer)
5876	decoder := json.NewDecoder(body)
5877	decoder.UseNumber()
5878	code, message, err := restjson.GetErrorInfo(decoder)
5879	if err != nil {
5880		var snapshot bytes.Buffer
5881		io.Copy(&snapshot, ringBuffer)
5882		err = &smithy.DeserializationError{
5883			Err:      fmt.Errorf("failed to decode response body, %w", err),
5884			Snapshot: snapshot.Bytes(),
5885		}
5886		return err
5887	}
5888
5889	errorBody.Seek(0, io.SeekStart)
5890	if len(code) != 0 {
5891		errorCode = restjson.SanitizeErrorCode(code)
5892	}
5893	if len(message) != 0 {
5894		errorMessage = message
5895	}
5896
5897	switch {
5898	default:
5899		genericError := &smithy.GenericAPIError{
5900			Code:    errorCode,
5901			Message: errorMessage,
5902		}
5903		return genericError
5904
5905	}
5906}
5907
5908type awsAwsjson11_deserializeOpListDeviceEvents struct {
5909}
5910
5911func (*awsAwsjson11_deserializeOpListDeviceEvents) ID() string {
5912	return "OperationDeserializer"
5913}
5914
5915func (m *awsAwsjson11_deserializeOpListDeviceEvents) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
5916	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
5917) {
5918	out, metadata, err = next.HandleDeserialize(ctx, in)
5919	if err != nil {
5920		return out, metadata, err
5921	}
5922
5923	response, ok := out.RawResponse.(*smithyhttp.Response)
5924	if !ok {
5925		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
5926	}
5927
5928	if response.StatusCode < 200 || response.StatusCode >= 300 {
5929		return out, metadata, awsAwsjson11_deserializeOpErrorListDeviceEvents(response, &metadata)
5930	}
5931	output := &ListDeviceEventsOutput{}
5932	out.Result = output
5933
5934	var buff [1024]byte
5935	ringBuffer := smithyio.NewRingBuffer(buff[:])
5936
5937	body := io.TeeReader(response.Body, ringBuffer)
5938	decoder := json.NewDecoder(body)
5939	decoder.UseNumber()
5940	var shape interface{}
5941	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
5942		var snapshot bytes.Buffer
5943		io.Copy(&snapshot, ringBuffer)
5944		err = &smithy.DeserializationError{
5945			Err:      fmt.Errorf("failed to decode response body, %w", err),
5946			Snapshot: snapshot.Bytes(),
5947		}
5948		return out, metadata, err
5949	}
5950
5951	err = awsAwsjson11_deserializeOpDocumentListDeviceEventsOutput(&output, shape)
5952	if err != nil {
5953		var snapshot bytes.Buffer
5954		io.Copy(&snapshot, ringBuffer)
5955		err = &smithy.DeserializationError{
5956			Err:      fmt.Errorf("failed to decode response body, %w", err),
5957			Snapshot: snapshot.Bytes(),
5958		}
5959		return out, metadata, err
5960	}
5961
5962	return out, metadata, err
5963}
5964
5965func awsAwsjson11_deserializeOpErrorListDeviceEvents(response *smithyhttp.Response, metadata *middleware.Metadata) error {
5966	var errorBuffer bytes.Buffer
5967	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
5968		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
5969	}
5970	errorBody := bytes.NewReader(errorBuffer.Bytes())
5971
5972	errorCode := "UnknownError"
5973	errorMessage := errorCode
5974
5975	code := response.Header.Get("X-Amzn-ErrorType")
5976	if len(code) != 0 {
5977		errorCode = restjson.SanitizeErrorCode(code)
5978	}
5979
5980	var buff [1024]byte
5981	ringBuffer := smithyio.NewRingBuffer(buff[:])
5982
5983	body := io.TeeReader(errorBody, ringBuffer)
5984	decoder := json.NewDecoder(body)
5985	decoder.UseNumber()
5986	code, message, err := restjson.GetErrorInfo(decoder)
5987	if err != nil {
5988		var snapshot bytes.Buffer
5989		io.Copy(&snapshot, ringBuffer)
5990		err = &smithy.DeserializationError{
5991			Err:      fmt.Errorf("failed to decode response body, %w", err),
5992			Snapshot: snapshot.Bytes(),
5993		}
5994		return err
5995	}
5996
5997	errorBody.Seek(0, io.SeekStart)
5998	if len(code) != 0 {
5999		errorCode = restjson.SanitizeErrorCode(code)
6000	}
6001	if len(message) != 0 {
6002		errorMessage = message
6003	}
6004
6005	switch {
6006	case strings.EqualFold("NotFoundException", errorCode):
6007		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
6008
6009	default:
6010		genericError := &smithy.GenericAPIError{
6011			Code:    errorCode,
6012			Message: errorMessage,
6013		}
6014		return genericError
6015
6016	}
6017}
6018
6019type awsAwsjson11_deserializeOpListGatewayGroups struct {
6020}
6021
6022func (*awsAwsjson11_deserializeOpListGatewayGroups) ID() string {
6023	return "OperationDeserializer"
6024}
6025
6026func (m *awsAwsjson11_deserializeOpListGatewayGroups) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6027	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6028) {
6029	out, metadata, err = next.HandleDeserialize(ctx, in)
6030	if err != nil {
6031		return out, metadata, err
6032	}
6033
6034	response, ok := out.RawResponse.(*smithyhttp.Response)
6035	if !ok {
6036		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6037	}
6038
6039	if response.StatusCode < 200 || response.StatusCode >= 300 {
6040		return out, metadata, awsAwsjson11_deserializeOpErrorListGatewayGroups(response, &metadata)
6041	}
6042	output := &ListGatewayGroupsOutput{}
6043	out.Result = output
6044
6045	var buff [1024]byte
6046	ringBuffer := smithyio.NewRingBuffer(buff[:])
6047
6048	body := io.TeeReader(response.Body, ringBuffer)
6049	decoder := json.NewDecoder(body)
6050	decoder.UseNumber()
6051	var shape interface{}
6052	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6053		var snapshot bytes.Buffer
6054		io.Copy(&snapshot, ringBuffer)
6055		err = &smithy.DeserializationError{
6056			Err:      fmt.Errorf("failed to decode response body, %w", err),
6057			Snapshot: snapshot.Bytes(),
6058		}
6059		return out, metadata, err
6060	}
6061
6062	err = awsAwsjson11_deserializeOpDocumentListGatewayGroupsOutput(&output, shape)
6063	if err != nil {
6064		var snapshot bytes.Buffer
6065		io.Copy(&snapshot, ringBuffer)
6066		err = &smithy.DeserializationError{
6067			Err:      fmt.Errorf("failed to decode response body, %w", err),
6068			Snapshot: snapshot.Bytes(),
6069		}
6070		return out, metadata, err
6071	}
6072
6073	return out, metadata, err
6074}
6075
6076func awsAwsjson11_deserializeOpErrorListGatewayGroups(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6077	var errorBuffer bytes.Buffer
6078	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6079		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6080	}
6081	errorBody := bytes.NewReader(errorBuffer.Bytes())
6082
6083	errorCode := "UnknownError"
6084	errorMessage := errorCode
6085
6086	code := response.Header.Get("X-Amzn-ErrorType")
6087	if len(code) != 0 {
6088		errorCode = restjson.SanitizeErrorCode(code)
6089	}
6090
6091	var buff [1024]byte
6092	ringBuffer := smithyio.NewRingBuffer(buff[:])
6093
6094	body := io.TeeReader(errorBody, ringBuffer)
6095	decoder := json.NewDecoder(body)
6096	decoder.UseNumber()
6097	code, message, err := restjson.GetErrorInfo(decoder)
6098	if err != nil {
6099		var snapshot bytes.Buffer
6100		io.Copy(&snapshot, ringBuffer)
6101		err = &smithy.DeserializationError{
6102			Err:      fmt.Errorf("failed to decode response body, %w", err),
6103			Snapshot: snapshot.Bytes(),
6104		}
6105		return err
6106	}
6107
6108	errorBody.Seek(0, io.SeekStart)
6109	if len(code) != 0 {
6110		errorCode = restjson.SanitizeErrorCode(code)
6111	}
6112	if len(message) != 0 {
6113		errorMessage = message
6114	}
6115
6116	switch {
6117	default:
6118		genericError := &smithy.GenericAPIError{
6119			Code:    errorCode,
6120			Message: errorMessage,
6121		}
6122		return genericError
6123
6124	}
6125}
6126
6127type awsAwsjson11_deserializeOpListGateways struct {
6128}
6129
6130func (*awsAwsjson11_deserializeOpListGateways) ID() string {
6131	return "OperationDeserializer"
6132}
6133
6134func (m *awsAwsjson11_deserializeOpListGateways) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6135	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6136) {
6137	out, metadata, err = next.HandleDeserialize(ctx, in)
6138	if err != nil {
6139		return out, metadata, err
6140	}
6141
6142	response, ok := out.RawResponse.(*smithyhttp.Response)
6143	if !ok {
6144		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6145	}
6146
6147	if response.StatusCode < 200 || response.StatusCode >= 300 {
6148		return out, metadata, awsAwsjson11_deserializeOpErrorListGateways(response, &metadata)
6149	}
6150	output := &ListGatewaysOutput{}
6151	out.Result = output
6152
6153	var buff [1024]byte
6154	ringBuffer := smithyio.NewRingBuffer(buff[:])
6155
6156	body := io.TeeReader(response.Body, ringBuffer)
6157	decoder := json.NewDecoder(body)
6158	decoder.UseNumber()
6159	var shape interface{}
6160	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6161		var snapshot bytes.Buffer
6162		io.Copy(&snapshot, ringBuffer)
6163		err = &smithy.DeserializationError{
6164			Err:      fmt.Errorf("failed to decode response body, %w", err),
6165			Snapshot: snapshot.Bytes(),
6166		}
6167		return out, metadata, err
6168	}
6169
6170	err = awsAwsjson11_deserializeOpDocumentListGatewaysOutput(&output, shape)
6171	if err != nil {
6172		var snapshot bytes.Buffer
6173		io.Copy(&snapshot, ringBuffer)
6174		err = &smithy.DeserializationError{
6175			Err:      fmt.Errorf("failed to decode response body, %w", err),
6176			Snapshot: snapshot.Bytes(),
6177		}
6178		return out, metadata, err
6179	}
6180
6181	return out, metadata, err
6182}
6183
6184func awsAwsjson11_deserializeOpErrorListGateways(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6185	var errorBuffer bytes.Buffer
6186	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6187		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6188	}
6189	errorBody := bytes.NewReader(errorBuffer.Bytes())
6190
6191	errorCode := "UnknownError"
6192	errorMessage := errorCode
6193
6194	code := response.Header.Get("X-Amzn-ErrorType")
6195	if len(code) != 0 {
6196		errorCode = restjson.SanitizeErrorCode(code)
6197	}
6198
6199	var buff [1024]byte
6200	ringBuffer := smithyio.NewRingBuffer(buff[:])
6201
6202	body := io.TeeReader(errorBody, ringBuffer)
6203	decoder := json.NewDecoder(body)
6204	decoder.UseNumber()
6205	code, message, err := restjson.GetErrorInfo(decoder)
6206	if err != nil {
6207		var snapshot bytes.Buffer
6208		io.Copy(&snapshot, ringBuffer)
6209		err = &smithy.DeserializationError{
6210			Err:      fmt.Errorf("failed to decode response body, %w", err),
6211			Snapshot: snapshot.Bytes(),
6212		}
6213		return err
6214	}
6215
6216	errorBody.Seek(0, io.SeekStart)
6217	if len(code) != 0 {
6218		errorCode = restjson.SanitizeErrorCode(code)
6219	}
6220	if len(message) != 0 {
6221		errorMessage = message
6222	}
6223
6224	switch {
6225	default:
6226		genericError := &smithy.GenericAPIError{
6227			Code:    errorCode,
6228			Message: errorMessage,
6229		}
6230		return genericError
6231
6232	}
6233}
6234
6235type awsAwsjson11_deserializeOpListSkills struct {
6236}
6237
6238func (*awsAwsjson11_deserializeOpListSkills) ID() string {
6239	return "OperationDeserializer"
6240}
6241
6242func (m *awsAwsjson11_deserializeOpListSkills) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6243	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6244) {
6245	out, metadata, err = next.HandleDeserialize(ctx, in)
6246	if err != nil {
6247		return out, metadata, err
6248	}
6249
6250	response, ok := out.RawResponse.(*smithyhttp.Response)
6251	if !ok {
6252		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6253	}
6254
6255	if response.StatusCode < 200 || response.StatusCode >= 300 {
6256		return out, metadata, awsAwsjson11_deserializeOpErrorListSkills(response, &metadata)
6257	}
6258	output := &ListSkillsOutput{}
6259	out.Result = output
6260
6261	var buff [1024]byte
6262	ringBuffer := smithyio.NewRingBuffer(buff[:])
6263
6264	body := io.TeeReader(response.Body, ringBuffer)
6265	decoder := json.NewDecoder(body)
6266	decoder.UseNumber()
6267	var shape interface{}
6268	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6269		var snapshot bytes.Buffer
6270		io.Copy(&snapshot, ringBuffer)
6271		err = &smithy.DeserializationError{
6272			Err:      fmt.Errorf("failed to decode response body, %w", err),
6273			Snapshot: snapshot.Bytes(),
6274		}
6275		return out, metadata, err
6276	}
6277
6278	err = awsAwsjson11_deserializeOpDocumentListSkillsOutput(&output, shape)
6279	if err != nil {
6280		var snapshot bytes.Buffer
6281		io.Copy(&snapshot, ringBuffer)
6282		err = &smithy.DeserializationError{
6283			Err:      fmt.Errorf("failed to decode response body, %w", err),
6284			Snapshot: snapshot.Bytes(),
6285		}
6286		return out, metadata, err
6287	}
6288
6289	return out, metadata, err
6290}
6291
6292func awsAwsjson11_deserializeOpErrorListSkills(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6293	var errorBuffer bytes.Buffer
6294	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6295		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6296	}
6297	errorBody := bytes.NewReader(errorBuffer.Bytes())
6298
6299	errorCode := "UnknownError"
6300	errorMessage := errorCode
6301
6302	code := response.Header.Get("X-Amzn-ErrorType")
6303	if len(code) != 0 {
6304		errorCode = restjson.SanitizeErrorCode(code)
6305	}
6306
6307	var buff [1024]byte
6308	ringBuffer := smithyio.NewRingBuffer(buff[:])
6309
6310	body := io.TeeReader(errorBody, ringBuffer)
6311	decoder := json.NewDecoder(body)
6312	decoder.UseNumber()
6313	code, message, err := restjson.GetErrorInfo(decoder)
6314	if err != nil {
6315		var snapshot bytes.Buffer
6316		io.Copy(&snapshot, ringBuffer)
6317		err = &smithy.DeserializationError{
6318			Err:      fmt.Errorf("failed to decode response body, %w", err),
6319			Snapshot: snapshot.Bytes(),
6320		}
6321		return err
6322	}
6323
6324	errorBody.Seek(0, io.SeekStart)
6325	if len(code) != 0 {
6326		errorCode = restjson.SanitizeErrorCode(code)
6327	}
6328	if len(message) != 0 {
6329		errorMessage = message
6330	}
6331
6332	switch {
6333	default:
6334		genericError := &smithy.GenericAPIError{
6335			Code:    errorCode,
6336			Message: errorMessage,
6337		}
6338		return genericError
6339
6340	}
6341}
6342
6343type awsAwsjson11_deserializeOpListSkillsStoreCategories struct {
6344}
6345
6346func (*awsAwsjson11_deserializeOpListSkillsStoreCategories) ID() string {
6347	return "OperationDeserializer"
6348}
6349
6350func (m *awsAwsjson11_deserializeOpListSkillsStoreCategories) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6351	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6352) {
6353	out, metadata, err = next.HandleDeserialize(ctx, in)
6354	if err != nil {
6355		return out, metadata, err
6356	}
6357
6358	response, ok := out.RawResponse.(*smithyhttp.Response)
6359	if !ok {
6360		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6361	}
6362
6363	if response.StatusCode < 200 || response.StatusCode >= 300 {
6364		return out, metadata, awsAwsjson11_deserializeOpErrorListSkillsStoreCategories(response, &metadata)
6365	}
6366	output := &ListSkillsStoreCategoriesOutput{}
6367	out.Result = output
6368
6369	var buff [1024]byte
6370	ringBuffer := smithyio.NewRingBuffer(buff[:])
6371
6372	body := io.TeeReader(response.Body, ringBuffer)
6373	decoder := json.NewDecoder(body)
6374	decoder.UseNumber()
6375	var shape interface{}
6376	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6377		var snapshot bytes.Buffer
6378		io.Copy(&snapshot, ringBuffer)
6379		err = &smithy.DeserializationError{
6380			Err:      fmt.Errorf("failed to decode response body, %w", err),
6381			Snapshot: snapshot.Bytes(),
6382		}
6383		return out, metadata, err
6384	}
6385
6386	err = awsAwsjson11_deserializeOpDocumentListSkillsStoreCategoriesOutput(&output, shape)
6387	if err != nil {
6388		var snapshot bytes.Buffer
6389		io.Copy(&snapshot, ringBuffer)
6390		err = &smithy.DeserializationError{
6391			Err:      fmt.Errorf("failed to decode response body, %w", err),
6392			Snapshot: snapshot.Bytes(),
6393		}
6394		return out, metadata, err
6395	}
6396
6397	return out, metadata, err
6398}
6399
6400func awsAwsjson11_deserializeOpErrorListSkillsStoreCategories(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6401	var errorBuffer bytes.Buffer
6402	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6403		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6404	}
6405	errorBody := bytes.NewReader(errorBuffer.Bytes())
6406
6407	errorCode := "UnknownError"
6408	errorMessage := errorCode
6409
6410	code := response.Header.Get("X-Amzn-ErrorType")
6411	if len(code) != 0 {
6412		errorCode = restjson.SanitizeErrorCode(code)
6413	}
6414
6415	var buff [1024]byte
6416	ringBuffer := smithyio.NewRingBuffer(buff[:])
6417
6418	body := io.TeeReader(errorBody, ringBuffer)
6419	decoder := json.NewDecoder(body)
6420	decoder.UseNumber()
6421	code, message, err := restjson.GetErrorInfo(decoder)
6422	if err != nil {
6423		var snapshot bytes.Buffer
6424		io.Copy(&snapshot, ringBuffer)
6425		err = &smithy.DeserializationError{
6426			Err:      fmt.Errorf("failed to decode response body, %w", err),
6427			Snapshot: snapshot.Bytes(),
6428		}
6429		return err
6430	}
6431
6432	errorBody.Seek(0, io.SeekStart)
6433	if len(code) != 0 {
6434		errorCode = restjson.SanitizeErrorCode(code)
6435	}
6436	if len(message) != 0 {
6437		errorMessage = message
6438	}
6439
6440	switch {
6441	default:
6442		genericError := &smithy.GenericAPIError{
6443			Code:    errorCode,
6444			Message: errorMessage,
6445		}
6446		return genericError
6447
6448	}
6449}
6450
6451type awsAwsjson11_deserializeOpListSkillsStoreSkillsByCategory struct {
6452}
6453
6454func (*awsAwsjson11_deserializeOpListSkillsStoreSkillsByCategory) ID() string {
6455	return "OperationDeserializer"
6456}
6457
6458func (m *awsAwsjson11_deserializeOpListSkillsStoreSkillsByCategory) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6459	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6460) {
6461	out, metadata, err = next.HandleDeserialize(ctx, in)
6462	if err != nil {
6463		return out, metadata, err
6464	}
6465
6466	response, ok := out.RawResponse.(*smithyhttp.Response)
6467	if !ok {
6468		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6469	}
6470
6471	if response.StatusCode < 200 || response.StatusCode >= 300 {
6472		return out, metadata, awsAwsjson11_deserializeOpErrorListSkillsStoreSkillsByCategory(response, &metadata)
6473	}
6474	output := &ListSkillsStoreSkillsByCategoryOutput{}
6475	out.Result = output
6476
6477	var buff [1024]byte
6478	ringBuffer := smithyio.NewRingBuffer(buff[:])
6479
6480	body := io.TeeReader(response.Body, ringBuffer)
6481	decoder := json.NewDecoder(body)
6482	decoder.UseNumber()
6483	var shape interface{}
6484	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6485		var snapshot bytes.Buffer
6486		io.Copy(&snapshot, ringBuffer)
6487		err = &smithy.DeserializationError{
6488			Err:      fmt.Errorf("failed to decode response body, %w", err),
6489			Snapshot: snapshot.Bytes(),
6490		}
6491		return out, metadata, err
6492	}
6493
6494	err = awsAwsjson11_deserializeOpDocumentListSkillsStoreSkillsByCategoryOutput(&output, shape)
6495	if err != nil {
6496		var snapshot bytes.Buffer
6497		io.Copy(&snapshot, ringBuffer)
6498		err = &smithy.DeserializationError{
6499			Err:      fmt.Errorf("failed to decode response body, %w", err),
6500			Snapshot: snapshot.Bytes(),
6501		}
6502		return out, metadata, err
6503	}
6504
6505	return out, metadata, err
6506}
6507
6508func awsAwsjson11_deserializeOpErrorListSkillsStoreSkillsByCategory(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6509	var errorBuffer bytes.Buffer
6510	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6511		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6512	}
6513	errorBody := bytes.NewReader(errorBuffer.Bytes())
6514
6515	errorCode := "UnknownError"
6516	errorMessage := errorCode
6517
6518	code := response.Header.Get("X-Amzn-ErrorType")
6519	if len(code) != 0 {
6520		errorCode = restjson.SanitizeErrorCode(code)
6521	}
6522
6523	var buff [1024]byte
6524	ringBuffer := smithyio.NewRingBuffer(buff[:])
6525
6526	body := io.TeeReader(errorBody, ringBuffer)
6527	decoder := json.NewDecoder(body)
6528	decoder.UseNumber()
6529	code, message, err := restjson.GetErrorInfo(decoder)
6530	if err != nil {
6531		var snapshot bytes.Buffer
6532		io.Copy(&snapshot, ringBuffer)
6533		err = &smithy.DeserializationError{
6534			Err:      fmt.Errorf("failed to decode response body, %w", err),
6535			Snapshot: snapshot.Bytes(),
6536		}
6537		return err
6538	}
6539
6540	errorBody.Seek(0, io.SeekStart)
6541	if len(code) != 0 {
6542		errorCode = restjson.SanitizeErrorCode(code)
6543	}
6544	if len(message) != 0 {
6545		errorMessage = message
6546	}
6547
6548	switch {
6549	default:
6550		genericError := &smithy.GenericAPIError{
6551			Code:    errorCode,
6552			Message: errorMessage,
6553		}
6554		return genericError
6555
6556	}
6557}
6558
6559type awsAwsjson11_deserializeOpListSmartHomeAppliances struct {
6560}
6561
6562func (*awsAwsjson11_deserializeOpListSmartHomeAppliances) ID() string {
6563	return "OperationDeserializer"
6564}
6565
6566func (m *awsAwsjson11_deserializeOpListSmartHomeAppliances) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6567	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6568) {
6569	out, metadata, err = next.HandleDeserialize(ctx, in)
6570	if err != nil {
6571		return out, metadata, err
6572	}
6573
6574	response, ok := out.RawResponse.(*smithyhttp.Response)
6575	if !ok {
6576		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6577	}
6578
6579	if response.StatusCode < 200 || response.StatusCode >= 300 {
6580		return out, metadata, awsAwsjson11_deserializeOpErrorListSmartHomeAppliances(response, &metadata)
6581	}
6582	output := &ListSmartHomeAppliancesOutput{}
6583	out.Result = output
6584
6585	var buff [1024]byte
6586	ringBuffer := smithyio.NewRingBuffer(buff[:])
6587
6588	body := io.TeeReader(response.Body, ringBuffer)
6589	decoder := json.NewDecoder(body)
6590	decoder.UseNumber()
6591	var shape interface{}
6592	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6593		var snapshot bytes.Buffer
6594		io.Copy(&snapshot, ringBuffer)
6595		err = &smithy.DeserializationError{
6596			Err:      fmt.Errorf("failed to decode response body, %w", err),
6597			Snapshot: snapshot.Bytes(),
6598		}
6599		return out, metadata, err
6600	}
6601
6602	err = awsAwsjson11_deserializeOpDocumentListSmartHomeAppliancesOutput(&output, shape)
6603	if err != nil {
6604		var snapshot bytes.Buffer
6605		io.Copy(&snapshot, ringBuffer)
6606		err = &smithy.DeserializationError{
6607			Err:      fmt.Errorf("failed to decode response body, %w", err),
6608			Snapshot: snapshot.Bytes(),
6609		}
6610		return out, metadata, err
6611	}
6612
6613	return out, metadata, err
6614}
6615
6616func awsAwsjson11_deserializeOpErrorListSmartHomeAppliances(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6617	var errorBuffer bytes.Buffer
6618	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6619		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6620	}
6621	errorBody := bytes.NewReader(errorBuffer.Bytes())
6622
6623	errorCode := "UnknownError"
6624	errorMessage := errorCode
6625
6626	code := response.Header.Get("X-Amzn-ErrorType")
6627	if len(code) != 0 {
6628		errorCode = restjson.SanitizeErrorCode(code)
6629	}
6630
6631	var buff [1024]byte
6632	ringBuffer := smithyio.NewRingBuffer(buff[:])
6633
6634	body := io.TeeReader(errorBody, ringBuffer)
6635	decoder := json.NewDecoder(body)
6636	decoder.UseNumber()
6637	code, message, err := restjson.GetErrorInfo(decoder)
6638	if err != nil {
6639		var snapshot bytes.Buffer
6640		io.Copy(&snapshot, ringBuffer)
6641		err = &smithy.DeserializationError{
6642			Err:      fmt.Errorf("failed to decode response body, %w", err),
6643			Snapshot: snapshot.Bytes(),
6644		}
6645		return err
6646	}
6647
6648	errorBody.Seek(0, io.SeekStart)
6649	if len(code) != 0 {
6650		errorCode = restjson.SanitizeErrorCode(code)
6651	}
6652	if len(message) != 0 {
6653		errorMessage = message
6654	}
6655
6656	switch {
6657	case strings.EqualFold("NotFoundException", errorCode):
6658		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
6659
6660	default:
6661		genericError := &smithy.GenericAPIError{
6662			Code:    errorCode,
6663			Message: errorMessage,
6664		}
6665		return genericError
6666
6667	}
6668}
6669
6670type awsAwsjson11_deserializeOpListTags struct {
6671}
6672
6673func (*awsAwsjson11_deserializeOpListTags) ID() string {
6674	return "OperationDeserializer"
6675}
6676
6677func (m *awsAwsjson11_deserializeOpListTags) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6678	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6679) {
6680	out, metadata, err = next.HandleDeserialize(ctx, in)
6681	if err != nil {
6682		return out, metadata, err
6683	}
6684
6685	response, ok := out.RawResponse.(*smithyhttp.Response)
6686	if !ok {
6687		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6688	}
6689
6690	if response.StatusCode < 200 || response.StatusCode >= 300 {
6691		return out, metadata, awsAwsjson11_deserializeOpErrorListTags(response, &metadata)
6692	}
6693	output := &ListTagsOutput{}
6694	out.Result = output
6695
6696	var buff [1024]byte
6697	ringBuffer := smithyio.NewRingBuffer(buff[:])
6698
6699	body := io.TeeReader(response.Body, ringBuffer)
6700	decoder := json.NewDecoder(body)
6701	decoder.UseNumber()
6702	var shape interface{}
6703	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6704		var snapshot bytes.Buffer
6705		io.Copy(&snapshot, ringBuffer)
6706		err = &smithy.DeserializationError{
6707			Err:      fmt.Errorf("failed to decode response body, %w", err),
6708			Snapshot: snapshot.Bytes(),
6709		}
6710		return out, metadata, err
6711	}
6712
6713	err = awsAwsjson11_deserializeOpDocumentListTagsOutput(&output, shape)
6714	if err != nil {
6715		var snapshot bytes.Buffer
6716		io.Copy(&snapshot, ringBuffer)
6717		err = &smithy.DeserializationError{
6718			Err:      fmt.Errorf("failed to decode response body, %w", err),
6719			Snapshot: snapshot.Bytes(),
6720		}
6721		return out, metadata, err
6722	}
6723
6724	return out, metadata, err
6725}
6726
6727func awsAwsjson11_deserializeOpErrorListTags(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6728	var errorBuffer bytes.Buffer
6729	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6730		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6731	}
6732	errorBody := bytes.NewReader(errorBuffer.Bytes())
6733
6734	errorCode := "UnknownError"
6735	errorMessage := errorCode
6736
6737	code := response.Header.Get("X-Amzn-ErrorType")
6738	if len(code) != 0 {
6739		errorCode = restjson.SanitizeErrorCode(code)
6740	}
6741
6742	var buff [1024]byte
6743	ringBuffer := smithyio.NewRingBuffer(buff[:])
6744
6745	body := io.TeeReader(errorBody, ringBuffer)
6746	decoder := json.NewDecoder(body)
6747	decoder.UseNumber()
6748	code, message, err := restjson.GetErrorInfo(decoder)
6749	if err != nil {
6750		var snapshot bytes.Buffer
6751		io.Copy(&snapshot, ringBuffer)
6752		err = &smithy.DeserializationError{
6753			Err:      fmt.Errorf("failed to decode response body, %w", err),
6754			Snapshot: snapshot.Bytes(),
6755		}
6756		return err
6757	}
6758
6759	errorBody.Seek(0, io.SeekStart)
6760	if len(code) != 0 {
6761		errorCode = restjson.SanitizeErrorCode(code)
6762	}
6763	if len(message) != 0 {
6764		errorMessage = message
6765	}
6766
6767	switch {
6768	case strings.EqualFold("NotFoundException", errorCode):
6769		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
6770
6771	default:
6772		genericError := &smithy.GenericAPIError{
6773			Code:    errorCode,
6774			Message: errorMessage,
6775		}
6776		return genericError
6777
6778	}
6779}
6780
6781type awsAwsjson11_deserializeOpPutConferencePreference struct {
6782}
6783
6784func (*awsAwsjson11_deserializeOpPutConferencePreference) ID() string {
6785	return "OperationDeserializer"
6786}
6787
6788func (m *awsAwsjson11_deserializeOpPutConferencePreference) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6789	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6790) {
6791	out, metadata, err = next.HandleDeserialize(ctx, in)
6792	if err != nil {
6793		return out, metadata, err
6794	}
6795
6796	response, ok := out.RawResponse.(*smithyhttp.Response)
6797	if !ok {
6798		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6799	}
6800
6801	if response.StatusCode < 200 || response.StatusCode >= 300 {
6802		return out, metadata, awsAwsjson11_deserializeOpErrorPutConferencePreference(response, &metadata)
6803	}
6804	output := &PutConferencePreferenceOutput{}
6805	out.Result = output
6806
6807	var buff [1024]byte
6808	ringBuffer := smithyio.NewRingBuffer(buff[:])
6809
6810	body := io.TeeReader(response.Body, ringBuffer)
6811	decoder := json.NewDecoder(body)
6812	decoder.UseNumber()
6813	var shape interface{}
6814	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6815		var snapshot bytes.Buffer
6816		io.Copy(&snapshot, ringBuffer)
6817		err = &smithy.DeserializationError{
6818			Err:      fmt.Errorf("failed to decode response body, %w", err),
6819			Snapshot: snapshot.Bytes(),
6820		}
6821		return out, metadata, err
6822	}
6823
6824	err = awsAwsjson11_deserializeOpDocumentPutConferencePreferenceOutput(&output, shape)
6825	if err != nil {
6826		var snapshot bytes.Buffer
6827		io.Copy(&snapshot, ringBuffer)
6828		err = &smithy.DeserializationError{
6829			Err:      fmt.Errorf("failed to decode response body, %w", err),
6830			Snapshot: snapshot.Bytes(),
6831		}
6832		return out, metadata, err
6833	}
6834
6835	return out, metadata, err
6836}
6837
6838func awsAwsjson11_deserializeOpErrorPutConferencePreference(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6839	var errorBuffer bytes.Buffer
6840	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6841		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6842	}
6843	errorBody := bytes.NewReader(errorBuffer.Bytes())
6844
6845	errorCode := "UnknownError"
6846	errorMessage := errorCode
6847
6848	code := response.Header.Get("X-Amzn-ErrorType")
6849	if len(code) != 0 {
6850		errorCode = restjson.SanitizeErrorCode(code)
6851	}
6852
6853	var buff [1024]byte
6854	ringBuffer := smithyio.NewRingBuffer(buff[:])
6855
6856	body := io.TeeReader(errorBody, ringBuffer)
6857	decoder := json.NewDecoder(body)
6858	decoder.UseNumber()
6859	code, message, err := restjson.GetErrorInfo(decoder)
6860	if err != nil {
6861		var snapshot bytes.Buffer
6862		io.Copy(&snapshot, ringBuffer)
6863		err = &smithy.DeserializationError{
6864			Err:      fmt.Errorf("failed to decode response body, %w", err),
6865			Snapshot: snapshot.Bytes(),
6866		}
6867		return err
6868	}
6869
6870	errorBody.Seek(0, io.SeekStart)
6871	if len(code) != 0 {
6872		errorCode = restjson.SanitizeErrorCode(code)
6873	}
6874	if len(message) != 0 {
6875		errorMessage = message
6876	}
6877
6878	switch {
6879	case strings.EqualFold("NotFoundException", errorCode):
6880		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
6881
6882	default:
6883		genericError := &smithy.GenericAPIError{
6884			Code:    errorCode,
6885			Message: errorMessage,
6886		}
6887		return genericError
6888
6889	}
6890}
6891
6892type awsAwsjson11_deserializeOpPutInvitationConfiguration struct {
6893}
6894
6895func (*awsAwsjson11_deserializeOpPutInvitationConfiguration) ID() string {
6896	return "OperationDeserializer"
6897}
6898
6899func (m *awsAwsjson11_deserializeOpPutInvitationConfiguration) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
6900	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
6901) {
6902	out, metadata, err = next.HandleDeserialize(ctx, in)
6903	if err != nil {
6904		return out, metadata, err
6905	}
6906
6907	response, ok := out.RawResponse.(*smithyhttp.Response)
6908	if !ok {
6909		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
6910	}
6911
6912	if response.StatusCode < 200 || response.StatusCode >= 300 {
6913		return out, metadata, awsAwsjson11_deserializeOpErrorPutInvitationConfiguration(response, &metadata)
6914	}
6915	output := &PutInvitationConfigurationOutput{}
6916	out.Result = output
6917
6918	var buff [1024]byte
6919	ringBuffer := smithyio.NewRingBuffer(buff[:])
6920
6921	body := io.TeeReader(response.Body, ringBuffer)
6922	decoder := json.NewDecoder(body)
6923	decoder.UseNumber()
6924	var shape interface{}
6925	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
6926		var snapshot bytes.Buffer
6927		io.Copy(&snapshot, ringBuffer)
6928		err = &smithy.DeserializationError{
6929			Err:      fmt.Errorf("failed to decode response body, %w", err),
6930			Snapshot: snapshot.Bytes(),
6931		}
6932		return out, metadata, err
6933	}
6934
6935	err = awsAwsjson11_deserializeOpDocumentPutInvitationConfigurationOutput(&output, shape)
6936	if err != nil {
6937		var snapshot bytes.Buffer
6938		io.Copy(&snapshot, ringBuffer)
6939		err = &smithy.DeserializationError{
6940			Err:      fmt.Errorf("failed to decode response body, %w", err),
6941			Snapshot: snapshot.Bytes(),
6942		}
6943		return out, metadata, err
6944	}
6945
6946	return out, metadata, err
6947}
6948
6949func awsAwsjson11_deserializeOpErrorPutInvitationConfiguration(response *smithyhttp.Response, metadata *middleware.Metadata) error {
6950	var errorBuffer bytes.Buffer
6951	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
6952		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
6953	}
6954	errorBody := bytes.NewReader(errorBuffer.Bytes())
6955
6956	errorCode := "UnknownError"
6957	errorMessage := errorCode
6958
6959	code := response.Header.Get("X-Amzn-ErrorType")
6960	if len(code) != 0 {
6961		errorCode = restjson.SanitizeErrorCode(code)
6962	}
6963
6964	var buff [1024]byte
6965	ringBuffer := smithyio.NewRingBuffer(buff[:])
6966
6967	body := io.TeeReader(errorBody, ringBuffer)
6968	decoder := json.NewDecoder(body)
6969	decoder.UseNumber()
6970	code, message, err := restjson.GetErrorInfo(decoder)
6971	if err != nil {
6972		var snapshot bytes.Buffer
6973		io.Copy(&snapshot, ringBuffer)
6974		err = &smithy.DeserializationError{
6975			Err:      fmt.Errorf("failed to decode response body, %w", err),
6976			Snapshot: snapshot.Bytes(),
6977		}
6978		return err
6979	}
6980
6981	errorBody.Seek(0, io.SeekStart)
6982	if len(code) != 0 {
6983		errorCode = restjson.SanitizeErrorCode(code)
6984	}
6985	if len(message) != 0 {
6986		errorMessage = message
6987	}
6988
6989	switch {
6990	case strings.EqualFold("ConcurrentModificationException", errorCode):
6991		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
6992
6993	case strings.EqualFold("NotFoundException", errorCode):
6994		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
6995
6996	default:
6997		genericError := &smithy.GenericAPIError{
6998			Code:    errorCode,
6999			Message: errorMessage,
7000		}
7001		return genericError
7002
7003	}
7004}
7005
7006type awsAwsjson11_deserializeOpPutRoomSkillParameter struct {
7007}
7008
7009func (*awsAwsjson11_deserializeOpPutRoomSkillParameter) ID() string {
7010	return "OperationDeserializer"
7011}
7012
7013func (m *awsAwsjson11_deserializeOpPutRoomSkillParameter) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7014	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7015) {
7016	out, metadata, err = next.HandleDeserialize(ctx, in)
7017	if err != nil {
7018		return out, metadata, err
7019	}
7020
7021	response, ok := out.RawResponse.(*smithyhttp.Response)
7022	if !ok {
7023		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7024	}
7025
7026	if response.StatusCode < 200 || response.StatusCode >= 300 {
7027		return out, metadata, awsAwsjson11_deserializeOpErrorPutRoomSkillParameter(response, &metadata)
7028	}
7029	output := &PutRoomSkillParameterOutput{}
7030	out.Result = output
7031
7032	var buff [1024]byte
7033	ringBuffer := smithyio.NewRingBuffer(buff[:])
7034
7035	body := io.TeeReader(response.Body, ringBuffer)
7036	decoder := json.NewDecoder(body)
7037	decoder.UseNumber()
7038	var shape interface{}
7039	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7040		var snapshot bytes.Buffer
7041		io.Copy(&snapshot, ringBuffer)
7042		err = &smithy.DeserializationError{
7043			Err:      fmt.Errorf("failed to decode response body, %w", err),
7044			Snapshot: snapshot.Bytes(),
7045		}
7046		return out, metadata, err
7047	}
7048
7049	err = awsAwsjson11_deserializeOpDocumentPutRoomSkillParameterOutput(&output, shape)
7050	if err != nil {
7051		var snapshot bytes.Buffer
7052		io.Copy(&snapshot, ringBuffer)
7053		err = &smithy.DeserializationError{
7054			Err:      fmt.Errorf("failed to decode response body, %w", err),
7055			Snapshot: snapshot.Bytes(),
7056		}
7057		return out, metadata, err
7058	}
7059
7060	return out, metadata, err
7061}
7062
7063func awsAwsjson11_deserializeOpErrorPutRoomSkillParameter(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7064	var errorBuffer bytes.Buffer
7065	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7066		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7067	}
7068	errorBody := bytes.NewReader(errorBuffer.Bytes())
7069
7070	errorCode := "UnknownError"
7071	errorMessage := errorCode
7072
7073	code := response.Header.Get("X-Amzn-ErrorType")
7074	if len(code) != 0 {
7075		errorCode = restjson.SanitizeErrorCode(code)
7076	}
7077
7078	var buff [1024]byte
7079	ringBuffer := smithyio.NewRingBuffer(buff[:])
7080
7081	body := io.TeeReader(errorBody, ringBuffer)
7082	decoder := json.NewDecoder(body)
7083	decoder.UseNumber()
7084	code, message, err := restjson.GetErrorInfo(decoder)
7085	if err != nil {
7086		var snapshot bytes.Buffer
7087		io.Copy(&snapshot, ringBuffer)
7088		err = &smithy.DeserializationError{
7089			Err:      fmt.Errorf("failed to decode response body, %w", err),
7090			Snapshot: snapshot.Bytes(),
7091		}
7092		return err
7093	}
7094
7095	errorBody.Seek(0, io.SeekStart)
7096	if len(code) != 0 {
7097		errorCode = restjson.SanitizeErrorCode(code)
7098	}
7099	if len(message) != 0 {
7100		errorMessage = message
7101	}
7102
7103	switch {
7104	case strings.EqualFold("ConcurrentModificationException", errorCode):
7105		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
7106
7107	default:
7108		genericError := &smithy.GenericAPIError{
7109			Code:    errorCode,
7110			Message: errorMessage,
7111		}
7112		return genericError
7113
7114	}
7115}
7116
7117type awsAwsjson11_deserializeOpPutSkillAuthorization struct {
7118}
7119
7120func (*awsAwsjson11_deserializeOpPutSkillAuthorization) ID() string {
7121	return "OperationDeserializer"
7122}
7123
7124func (m *awsAwsjson11_deserializeOpPutSkillAuthorization) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7125	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7126) {
7127	out, metadata, err = next.HandleDeserialize(ctx, in)
7128	if err != nil {
7129		return out, metadata, err
7130	}
7131
7132	response, ok := out.RawResponse.(*smithyhttp.Response)
7133	if !ok {
7134		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7135	}
7136
7137	if response.StatusCode < 200 || response.StatusCode >= 300 {
7138		return out, metadata, awsAwsjson11_deserializeOpErrorPutSkillAuthorization(response, &metadata)
7139	}
7140	output := &PutSkillAuthorizationOutput{}
7141	out.Result = output
7142
7143	var buff [1024]byte
7144	ringBuffer := smithyio.NewRingBuffer(buff[:])
7145
7146	body := io.TeeReader(response.Body, ringBuffer)
7147	decoder := json.NewDecoder(body)
7148	decoder.UseNumber()
7149	var shape interface{}
7150	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7151		var snapshot bytes.Buffer
7152		io.Copy(&snapshot, ringBuffer)
7153		err = &smithy.DeserializationError{
7154			Err:      fmt.Errorf("failed to decode response body, %w", err),
7155			Snapshot: snapshot.Bytes(),
7156		}
7157		return out, metadata, err
7158	}
7159
7160	err = awsAwsjson11_deserializeOpDocumentPutSkillAuthorizationOutput(&output, shape)
7161	if err != nil {
7162		var snapshot bytes.Buffer
7163		io.Copy(&snapshot, ringBuffer)
7164		err = &smithy.DeserializationError{
7165			Err:      fmt.Errorf("failed to decode response body, %w", err),
7166			Snapshot: snapshot.Bytes(),
7167		}
7168		return out, metadata, err
7169	}
7170
7171	return out, metadata, err
7172}
7173
7174func awsAwsjson11_deserializeOpErrorPutSkillAuthorization(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7175	var errorBuffer bytes.Buffer
7176	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7177		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7178	}
7179	errorBody := bytes.NewReader(errorBuffer.Bytes())
7180
7181	errorCode := "UnknownError"
7182	errorMessage := errorCode
7183
7184	code := response.Header.Get("X-Amzn-ErrorType")
7185	if len(code) != 0 {
7186		errorCode = restjson.SanitizeErrorCode(code)
7187	}
7188
7189	var buff [1024]byte
7190	ringBuffer := smithyio.NewRingBuffer(buff[:])
7191
7192	body := io.TeeReader(errorBody, ringBuffer)
7193	decoder := json.NewDecoder(body)
7194	decoder.UseNumber()
7195	code, message, err := restjson.GetErrorInfo(decoder)
7196	if err != nil {
7197		var snapshot bytes.Buffer
7198		io.Copy(&snapshot, ringBuffer)
7199		err = &smithy.DeserializationError{
7200			Err:      fmt.Errorf("failed to decode response body, %w", err),
7201			Snapshot: snapshot.Bytes(),
7202		}
7203		return err
7204	}
7205
7206	errorBody.Seek(0, io.SeekStart)
7207	if len(code) != 0 {
7208		errorCode = restjson.SanitizeErrorCode(code)
7209	}
7210	if len(message) != 0 {
7211		errorMessage = message
7212	}
7213
7214	switch {
7215	case strings.EqualFold("ConcurrentModificationException", errorCode):
7216		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
7217
7218	case strings.EqualFold("UnauthorizedException", errorCode):
7219		return awsAwsjson11_deserializeErrorUnauthorizedException(response, errorBody)
7220
7221	default:
7222		genericError := &smithy.GenericAPIError{
7223			Code:    errorCode,
7224			Message: errorMessage,
7225		}
7226		return genericError
7227
7228	}
7229}
7230
7231type awsAwsjson11_deserializeOpRegisterAVSDevice struct {
7232}
7233
7234func (*awsAwsjson11_deserializeOpRegisterAVSDevice) ID() string {
7235	return "OperationDeserializer"
7236}
7237
7238func (m *awsAwsjson11_deserializeOpRegisterAVSDevice) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7239	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7240) {
7241	out, metadata, err = next.HandleDeserialize(ctx, in)
7242	if err != nil {
7243		return out, metadata, err
7244	}
7245
7246	response, ok := out.RawResponse.(*smithyhttp.Response)
7247	if !ok {
7248		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7249	}
7250
7251	if response.StatusCode < 200 || response.StatusCode >= 300 {
7252		return out, metadata, awsAwsjson11_deserializeOpErrorRegisterAVSDevice(response, &metadata)
7253	}
7254	output := &RegisterAVSDeviceOutput{}
7255	out.Result = output
7256
7257	var buff [1024]byte
7258	ringBuffer := smithyio.NewRingBuffer(buff[:])
7259
7260	body := io.TeeReader(response.Body, ringBuffer)
7261	decoder := json.NewDecoder(body)
7262	decoder.UseNumber()
7263	var shape interface{}
7264	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7265		var snapshot bytes.Buffer
7266		io.Copy(&snapshot, ringBuffer)
7267		err = &smithy.DeserializationError{
7268			Err:      fmt.Errorf("failed to decode response body, %w", err),
7269			Snapshot: snapshot.Bytes(),
7270		}
7271		return out, metadata, err
7272	}
7273
7274	err = awsAwsjson11_deserializeOpDocumentRegisterAVSDeviceOutput(&output, shape)
7275	if err != nil {
7276		var snapshot bytes.Buffer
7277		io.Copy(&snapshot, ringBuffer)
7278		err = &smithy.DeserializationError{
7279			Err:      fmt.Errorf("failed to decode response body, %w", err),
7280			Snapshot: snapshot.Bytes(),
7281		}
7282		return out, metadata, err
7283	}
7284
7285	return out, metadata, err
7286}
7287
7288func awsAwsjson11_deserializeOpErrorRegisterAVSDevice(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7289	var errorBuffer bytes.Buffer
7290	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7291		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7292	}
7293	errorBody := bytes.NewReader(errorBuffer.Bytes())
7294
7295	errorCode := "UnknownError"
7296	errorMessage := errorCode
7297
7298	code := response.Header.Get("X-Amzn-ErrorType")
7299	if len(code) != 0 {
7300		errorCode = restjson.SanitizeErrorCode(code)
7301	}
7302
7303	var buff [1024]byte
7304	ringBuffer := smithyio.NewRingBuffer(buff[:])
7305
7306	body := io.TeeReader(errorBody, ringBuffer)
7307	decoder := json.NewDecoder(body)
7308	decoder.UseNumber()
7309	code, message, err := restjson.GetErrorInfo(decoder)
7310	if err != nil {
7311		var snapshot bytes.Buffer
7312		io.Copy(&snapshot, ringBuffer)
7313		err = &smithy.DeserializationError{
7314			Err:      fmt.Errorf("failed to decode response body, %w", err),
7315			Snapshot: snapshot.Bytes(),
7316		}
7317		return err
7318	}
7319
7320	errorBody.Seek(0, io.SeekStart)
7321	if len(code) != 0 {
7322		errorCode = restjson.SanitizeErrorCode(code)
7323	}
7324	if len(message) != 0 {
7325		errorMessage = message
7326	}
7327
7328	switch {
7329	case strings.EqualFold("ConcurrentModificationException", errorCode):
7330		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
7331
7332	case strings.EqualFold("InvalidDeviceException", errorCode):
7333		return awsAwsjson11_deserializeErrorInvalidDeviceException(response, errorBody)
7334
7335	case strings.EqualFold("LimitExceededException", errorCode):
7336		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
7337
7338	case strings.EqualFold("NotFoundException", errorCode):
7339		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
7340
7341	default:
7342		genericError := &smithy.GenericAPIError{
7343			Code:    errorCode,
7344			Message: errorMessage,
7345		}
7346		return genericError
7347
7348	}
7349}
7350
7351type awsAwsjson11_deserializeOpRejectSkill struct {
7352}
7353
7354func (*awsAwsjson11_deserializeOpRejectSkill) ID() string {
7355	return "OperationDeserializer"
7356}
7357
7358func (m *awsAwsjson11_deserializeOpRejectSkill) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7359	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7360) {
7361	out, metadata, err = next.HandleDeserialize(ctx, in)
7362	if err != nil {
7363		return out, metadata, err
7364	}
7365
7366	response, ok := out.RawResponse.(*smithyhttp.Response)
7367	if !ok {
7368		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7369	}
7370
7371	if response.StatusCode < 200 || response.StatusCode >= 300 {
7372		return out, metadata, awsAwsjson11_deserializeOpErrorRejectSkill(response, &metadata)
7373	}
7374	output := &RejectSkillOutput{}
7375	out.Result = output
7376
7377	var buff [1024]byte
7378	ringBuffer := smithyio.NewRingBuffer(buff[:])
7379
7380	body := io.TeeReader(response.Body, ringBuffer)
7381	decoder := json.NewDecoder(body)
7382	decoder.UseNumber()
7383	var shape interface{}
7384	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7385		var snapshot bytes.Buffer
7386		io.Copy(&snapshot, ringBuffer)
7387		err = &smithy.DeserializationError{
7388			Err:      fmt.Errorf("failed to decode response body, %w", err),
7389			Snapshot: snapshot.Bytes(),
7390		}
7391		return out, metadata, err
7392	}
7393
7394	err = awsAwsjson11_deserializeOpDocumentRejectSkillOutput(&output, shape)
7395	if err != nil {
7396		var snapshot bytes.Buffer
7397		io.Copy(&snapshot, ringBuffer)
7398		err = &smithy.DeserializationError{
7399			Err:      fmt.Errorf("failed to decode response body, %w", err),
7400			Snapshot: snapshot.Bytes(),
7401		}
7402		return out, metadata, err
7403	}
7404
7405	return out, metadata, err
7406}
7407
7408func awsAwsjson11_deserializeOpErrorRejectSkill(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7409	var errorBuffer bytes.Buffer
7410	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7411		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7412	}
7413	errorBody := bytes.NewReader(errorBuffer.Bytes())
7414
7415	errorCode := "UnknownError"
7416	errorMessage := errorCode
7417
7418	code := response.Header.Get("X-Amzn-ErrorType")
7419	if len(code) != 0 {
7420		errorCode = restjson.SanitizeErrorCode(code)
7421	}
7422
7423	var buff [1024]byte
7424	ringBuffer := smithyio.NewRingBuffer(buff[:])
7425
7426	body := io.TeeReader(errorBody, ringBuffer)
7427	decoder := json.NewDecoder(body)
7428	decoder.UseNumber()
7429	code, message, err := restjson.GetErrorInfo(decoder)
7430	if err != nil {
7431		var snapshot bytes.Buffer
7432		io.Copy(&snapshot, ringBuffer)
7433		err = &smithy.DeserializationError{
7434			Err:      fmt.Errorf("failed to decode response body, %w", err),
7435			Snapshot: snapshot.Bytes(),
7436		}
7437		return err
7438	}
7439
7440	errorBody.Seek(0, io.SeekStart)
7441	if len(code) != 0 {
7442		errorCode = restjson.SanitizeErrorCode(code)
7443	}
7444	if len(message) != 0 {
7445		errorMessage = message
7446	}
7447
7448	switch {
7449	case strings.EqualFold("ConcurrentModificationException", errorCode):
7450		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
7451
7452	case strings.EqualFold("NotFoundException", errorCode):
7453		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
7454
7455	default:
7456		genericError := &smithy.GenericAPIError{
7457			Code:    errorCode,
7458			Message: errorMessage,
7459		}
7460		return genericError
7461
7462	}
7463}
7464
7465type awsAwsjson11_deserializeOpResolveRoom struct {
7466}
7467
7468func (*awsAwsjson11_deserializeOpResolveRoom) ID() string {
7469	return "OperationDeserializer"
7470}
7471
7472func (m *awsAwsjson11_deserializeOpResolveRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7473	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7474) {
7475	out, metadata, err = next.HandleDeserialize(ctx, in)
7476	if err != nil {
7477		return out, metadata, err
7478	}
7479
7480	response, ok := out.RawResponse.(*smithyhttp.Response)
7481	if !ok {
7482		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7483	}
7484
7485	if response.StatusCode < 200 || response.StatusCode >= 300 {
7486		return out, metadata, awsAwsjson11_deserializeOpErrorResolveRoom(response, &metadata)
7487	}
7488	output := &ResolveRoomOutput{}
7489	out.Result = output
7490
7491	var buff [1024]byte
7492	ringBuffer := smithyio.NewRingBuffer(buff[:])
7493
7494	body := io.TeeReader(response.Body, ringBuffer)
7495	decoder := json.NewDecoder(body)
7496	decoder.UseNumber()
7497	var shape interface{}
7498	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7499		var snapshot bytes.Buffer
7500		io.Copy(&snapshot, ringBuffer)
7501		err = &smithy.DeserializationError{
7502			Err:      fmt.Errorf("failed to decode response body, %w", err),
7503			Snapshot: snapshot.Bytes(),
7504		}
7505		return out, metadata, err
7506	}
7507
7508	err = awsAwsjson11_deserializeOpDocumentResolveRoomOutput(&output, shape)
7509	if err != nil {
7510		var snapshot bytes.Buffer
7511		io.Copy(&snapshot, ringBuffer)
7512		err = &smithy.DeserializationError{
7513			Err:      fmt.Errorf("failed to decode response body, %w", err),
7514			Snapshot: snapshot.Bytes(),
7515		}
7516		return out, metadata, err
7517	}
7518
7519	return out, metadata, err
7520}
7521
7522func awsAwsjson11_deserializeOpErrorResolveRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7523	var errorBuffer bytes.Buffer
7524	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7525		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7526	}
7527	errorBody := bytes.NewReader(errorBuffer.Bytes())
7528
7529	errorCode := "UnknownError"
7530	errorMessage := errorCode
7531
7532	code := response.Header.Get("X-Amzn-ErrorType")
7533	if len(code) != 0 {
7534		errorCode = restjson.SanitizeErrorCode(code)
7535	}
7536
7537	var buff [1024]byte
7538	ringBuffer := smithyio.NewRingBuffer(buff[:])
7539
7540	body := io.TeeReader(errorBody, ringBuffer)
7541	decoder := json.NewDecoder(body)
7542	decoder.UseNumber()
7543	code, message, err := restjson.GetErrorInfo(decoder)
7544	if err != nil {
7545		var snapshot bytes.Buffer
7546		io.Copy(&snapshot, ringBuffer)
7547		err = &smithy.DeserializationError{
7548			Err:      fmt.Errorf("failed to decode response body, %w", err),
7549			Snapshot: snapshot.Bytes(),
7550		}
7551		return err
7552	}
7553
7554	errorBody.Seek(0, io.SeekStart)
7555	if len(code) != 0 {
7556		errorCode = restjson.SanitizeErrorCode(code)
7557	}
7558	if len(message) != 0 {
7559		errorMessage = message
7560	}
7561
7562	switch {
7563	case strings.EqualFold("NotFoundException", errorCode):
7564		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
7565
7566	default:
7567		genericError := &smithy.GenericAPIError{
7568			Code:    errorCode,
7569			Message: errorMessage,
7570		}
7571		return genericError
7572
7573	}
7574}
7575
7576type awsAwsjson11_deserializeOpRevokeInvitation struct {
7577}
7578
7579func (*awsAwsjson11_deserializeOpRevokeInvitation) ID() string {
7580	return "OperationDeserializer"
7581}
7582
7583func (m *awsAwsjson11_deserializeOpRevokeInvitation) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7584	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7585) {
7586	out, metadata, err = next.HandleDeserialize(ctx, in)
7587	if err != nil {
7588		return out, metadata, err
7589	}
7590
7591	response, ok := out.RawResponse.(*smithyhttp.Response)
7592	if !ok {
7593		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7594	}
7595
7596	if response.StatusCode < 200 || response.StatusCode >= 300 {
7597		return out, metadata, awsAwsjson11_deserializeOpErrorRevokeInvitation(response, &metadata)
7598	}
7599	output := &RevokeInvitationOutput{}
7600	out.Result = output
7601
7602	var buff [1024]byte
7603	ringBuffer := smithyio.NewRingBuffer(buff[:])
7604
7605	body := io.TeeReader(response.Body, ringBuffer)
7606	decoder := json.NewDecoder(body)
7607	decoder.UseNumber()
7608	var shape interface{}
7609	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7610		var snapshot bytes.Buffer
7611		io.Copy(&snapshot, ringBuffer)
7612		err = &smithy.DeserializationError{
7613			Err:      fmt.Errorf("failed to decode response body, %w", err),
7614			Snapshot: snapshot.Bytes(),
7615		}
7616		return out, metadata, err
7617	}
7618
7619	err = awsAwsjson11_deserializeOpDocumentRevokeInvitationOutput(&output, shape)
7620	if err != nil {
7621		var snapshot bytes.Buffer
7622		io.Copy(&snapshot, ringBuffer)
7623		err = &smithy.DeserializationError{
7624			Err:      fmt.Errorf("failed to decode response body, %w", err),
7625			Snapshot: snapshot.Bytes(),
7626		}
7627		return out, metadata, err
7628	}
7629
7630	return out, metadata, err
7631}
7632
7633func awsAwsjson11_deserializeOpErrorRevokeInvitation(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7634	var errorBuffer bytes.Buffer
7635	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7636		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7637	}
7638	errorBody := bytes.NewReader(errorBuffer.Bytes())
7639
7640	errorCode := "UnknownError"
7641	errorMessage := errorCode
7642
7643	code := response.Header.Get("X-Amzn-ErrorType")
7644	if len(code) != 0 {
7645		errorCode = restjson.SanitizeErrorCode(code)
7646	}
7647
7648	var buff [1024]byte
7649	ringBuffer := smithyio.NewRingBuffer(buff[:])
7650
7651	body := io.TeeReader(errorBody, ringBuffer)
7652	decoder := json.NewDecoder(body)
7653	decoder.UseNumber()
7654	code, message, err := restjson.GetErrorInfo(decoder)
7655	if err != nil {
7656		var snapshot bytes.Buffer
7657		io.Copy(&snapshot, ringBuffer)
7658		err = &smithy.DeserializationError{
7659			Err:      fmt.Errorf("failed to decode response body, %w", err),
7660			Snapshot: snapshot.Bytes(),
7661		}
7662		return err
7663	}
7664
7665	errorBody.Seek(0, io.SeekStart)
7666	if len(code) != 0 {
7667		errorCode = restjson.SanitizeErrorCode(code)
7668	}
7669	if len(message) != 0 {
7670		errorMessage = message
7671	}
7672
7673	switch {
7674	case strings.EqualFold("ConcurrentModificationException", errorCode):
7675		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
7676
7677	case strings.EqualFold("NotFoundException", errorCode):
7678		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
7679
7680	default:
7681		genericError := &smithy.GenericAPIError{
7682			Code:    errorCode,
7683			Message: errorMessage,
7684		}
7685		return genericError
7686
7687	}
7688}
7689
7690type awsAwsjson11_deserializeOpSearchAddressBooks struct {
7691}
7692
7693func (*awsAwsjson11_deserializeOpSearchAddressBooks) ID() string {
7694	return "OperationDeserializer"
7695}
7696
7697func (m *awsAwsjson11_deserializeOpSearchAddressBooks) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7698	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7699) {
7700	out, metadata, err = next.HandleDeserialize(ctx, in)
7701	if err != nil {
7702		return out, metadata, err
7703	}
7704
7705	response, ok := out.RawResponse.(*smithyhttp.Response)
7706	if !ok {
7707		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7708	}
7709
7710	if response.StatusCode < 200 || response.StatusCode >= 300 {
7711		return out, metadata, awsAwsjson11_deserializeOpErrorSearchAddressBooks(response, &metadata)
7712	}
7713	output := &SearchAddressBooksOutput{}
7714	out.Result = output
7715
7716	var buff [1024]byte
7717	ringBuffer := smithyio.NewRingBuffer(buff[:])
7718
7719	body := io.TeeReader(response.Body, ringBuffer)
7720	decoder := json.NewDecoder(body)
7721	decoder.UseNumber()
7722	var shape interface{}
7723	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7724		var snapshot bytes.Buffer
7725		io.Copy(&snapshot, ringBuffer)
7726		err = &smithy.DeserializationError{
7727			Err:      fmt.Errorf("failed to decode response body, %w", err),
7728			Snapshot: snapshot.Bytes(),
7729		}
7730		return out, metadata, err
7731	}
7732
7733	err = awsAwsjson11_deserializeOpDocumentSearchAddressBooksOutput(&output, shape)
7734	if err != nil {
7735		var snapshot bytes.Buffer
7736		io.Copy(&snapshot, ringBuffer)
7737		err = &smithy.DeserializationError{
7738			Err:      fmt.Errorf("failed to decode response body, %w", err),
7739			Snapshot: snapshot.Bytes(),
7740		}
7741		return out, metadata, err
7742	}
7743
7744	return out, metadata, err
7745}
7746
7747func awsAwsjson11_deserializeOpErrorSearchAddressBooks(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7748	var errorBuffer bytes.Buffer
7749	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7750		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7751	}
7752	errorBody := bytes.NewReader(errorBuffer.Bytes())
7753
7754	errorCode := "UnknownError"
7755	errorMessage := errorCode
7756
7757	code := response.Header.Get("X-Amzn-ErrorType")
7758	if len(code) != 0 {
7759		errorCode = restjson.SanitizeErrorCode(code)
7760	}
7761
7762	var buff [1024]byte
7763	ringBuffer := smithyio.NewRingBuffer(buff[:])
7764
7765	body := io.TeeReader(errorBody, ringBuffer)
7766	decoder := json.NewDecoder(body)
7767	decoder.UseNumber()
7768	code, message, err := restjson.GetErrorInfo(decoder)
7769	if err != nil {
7770		var snapshot bytes.Buffer
7771		io.Copy(&snapshot, ringBuffer)
7772		err = &smithy.DeserializationError{
7773			Err:      fmt.Errorf("failed to decode response body, %w", err),
7774			Snapshot: snapshot.Bytes(),
7775		}
7776		return err
7777	}
7778
7779	errorBody.Seek(0, io.SeekStart)
7780	if len(code) != 0 {
7781		errorCode = restjson.SanitizeErrorCode(code)
7782	}
7783	if len(message) != 0 {
7784		errorMessage = message
7785	}
7786
7787	switch {
7788	default:
7789		genericError := &smithy.GenericAPIError{
7790			Code:    errorCode,
7791			Message: errorMessage,
7792		}
7793		return genericError
7794
7795	}
7796}
7797
7798type awsAwsjson11_deserializeOpSearchContacts struct {
7799}
7800
7801func (*awsAwsjson11_deserializeOpSearchContacts) ID() string {
7802	return "OperationDeserializer"
7803}
7804
7805func (m *awsAwsjson11_deserializeOpSearchContacts) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7806	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7807) {
7808	out, metadata, err = next.HandleDeserialize(ctx, in)
7809	if err != nil {
7810		return out, metadata, err
7811	}
7812
7813	response, ok := out.RawResponse.(*smithyhttp.Response)
7814	if !ok {
7815		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7816	}
7817
7818	if response.StatusCode < 200 || response.StatusCode >= 300 {
7819		return out, metadata, awsAwsjson11_deserializeOpErrorSearchContacts(response, &metadata)
7820	}
7821	output := &SearchContactsOutput{}
7822	out.Result = output
7823
7824	var buff [1024]byte
7825	ringBuffer := smithyio.NewRingBuffer(buff[:])
7826
7827	body := io.TeeReader(response.Body, ringBuffer)
7828	decoder := json.NewDecoder(body)
7829	decoder.UseNumber()
7830	var shape interface{}
7831	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7832		var snapshot bytes.Buffer
7833		io.Copy(&snapshot, ringBuffer)
7834		err = &smithy.DeserializationError{
7835			Err:      fmt.Errorf("failed to decode response body, %w", err),
7836			Snapshot: snapshot.Bytes(),
7837		}
7838		return out, metadata, err
7839	}
7840
7841	err = awsAwsjson11_deserializeOpDocumentSearchContactsOutput(&output, shape)
7842	if err != nil {
7843		var snapshot bytes.Buffer
7844		io.Copy(&snapshot, ringBuffer)
7845		err = &smithy.DeserializationError{
7846			Err:      fmt.Errorf("failed to decode response body, %w", err),
7847			Snapshot: snapshot.Bytes(),
7848		}
7849		return out, metadata, err
7850	}
7851
7852	return out, metadata, err
7853}
7854
7855func awsAwsjson11_deserializeOpErrorSearchContacts(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7856	var errorBuffer bytes.Buffer
7857	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7858		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7859	}
7860	errorBody := bytes.NewReader(errorBuffer.Bytes())
7861
7862	errorCode := "UnknownError"
7863	errorMessage := errorCode
7864
7865	code := response.Header.Get("X-Amzn-ErrorType")
7866	if len(code) != 0 {
7867		errorCode = restjson.SanitizeErrorCode(code)
7868	}
7869
7870	var buff [1024]byte
7871	ringBuffer := smithyio.NewRingBuffer(buff[:])
7872
7873	body := io.TeeReader(errorBody, ringBuffer)
7874	decoder := json.NewDecoder(body)
7875	decoder.UseNumber()
7876	code, message, err := restjson.GetErrorInfo(decoder)
7877	if err != nil {
7878		var snapshot bytes.Buffer
7879		io.Copy(&snapshot, ringBuffer)
7880		err = &smithy.DeserializationError{
7881			Err:      fmt.Errorf("failed to decode response body, %w", err),
7882			Snapshot: snapshot.Bytes(),
7883		}
7884		return err
7885	}
7886
7887	errorBody.Seek(0, io.SeekStart)
7888	if len(code) != 0 {
7889		errorCode = restjson.SanitizeErrorCode(code)
7890	}
7891	if len(message) != 0 {
7892		errorMessage = message
7893	}
7894
7895	switch {
7896	default:
7897		genericError := &smithy.GenericAPIError{
7898			Code:    errorCode,
7899			Message: errorMessage,
7900		}
7901		return genericError
7902
7903	}
7904}
7905
7906type awsAwsjson11_deserializeOpSearchDevices struct {
7907}
7908
7909func (*awsAwsjson11_deserializeOpSearchDevices) ID() string {
7910	return "OperationDeserializer"
7911}
7912
7913func (m *awsAwsjson11_deserializeOpSearchDevices) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
7914	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
7915) {
7916	out, metadata, err = next.HandleDeserialize(ctx, in)
7917	if err != nil {
7918		return out, metadata, err
7919	}
7920
7921	response, ok := out.RawResponse.(*smithyhttp.Response)
7922	if !ok {
7923		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
7924	}
7925
7926	if response.StatusCode < 200 || response.StatusCode >= 300 {
7927		return out, metadata, awsAwsjson11_deserializeOpErrorSearchDevices(response, &metadata)
7928	}
7929	output := &SearchDevicesOutput{}
7930	out.Result = output
7931
7932	var buff [1024]byte
7933	ringBuffer := smithyio.NewRingBuffer(buff[:])
7934
7935	body := io.TeeReader(response.Body, ringBuffer)
7936	decoder := json.NewDecoder(body)
7937	decoder.UseNumber()
7938	var shape interface{}
7939	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
7940		var snapshot bytes.Buffer
7941		io.Copy(&snapshot, ringBuffer)
7942		err = &smithy.DeserializationError{
7943			Err:      fmt.Errorf("failed to decode response body, %w", err),
7944			Snapshot: snapshot.Bytes(),
7945		}
7946		return out, metadata, err
7947	}
7948
7949	err = awsAwsjson11_deserializeOpDocumentSearchDevicesOutput(&output, shape)
7950	if err != nil {
7951		var snapshot bytes.Buffer
7952		io.Copy(&snapshot, ringBuffer)
7953		err = &smithy.DeserializationError{
7954			Err:      fmt.Errorf("failed to decode response body, %w", err),
7955			Snapshot: snapshot.Bytes(),
7956		}
7957		return out, metadata, err
7958	}
7959
7960	return out, metadata, err
7961}
7962
7963func awsAwsjson11_deserializeOpErrorSearchDevices(response *smithyhttp.Response, metadata *middleware.Metadata) error {
7964	var errorBuffer bytes.Buffer
7965	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
7966		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
7967	}
7968	errorBody := bytes.NewReader(errorBuffer.Bytes())
7969
7970	errorCode := "UnknownError"
7971	errorMessage := errorCode
7972
7973	code := response.Header.Get("X-Amzn-ErrorType")
7974	if len(code) != 0 {
7975		errorCode = restjson.SanitizeErrorCode(code)
7976	}
7977
7978	var buff [1024]byte
7979	ringBuffer := smithyio.NewRingBuffer(buff[:])
7980
7981	body := io.TeeReader(errorBody, ringBuffer)
7982	decoder := json.NewDecoder(body)
7983	decoder.UseNumber()
7984	code, message, err := restjson.GetErrorInfo(decoder)
7985	if err != nil {
7986		var snapshot bytes.Buffer
7987		io.Copy(&snapshot, ringBuffer)
7988		err = &smithy.DeserializationError{
7989			Err:      fmt.Errorf("failed to decode response body, %w", err),
7990			Snapshot: snapshot.Bytes(),
7991		}
7992		return err
7993	}
7994
7995	errorBody.Seek(0, io.SeekStart)
7996	if len(code) != 0 {
7997		errorCode = restjson.SanitizeErrorCode(code)
7998	}
7999	if len(message) != 0 {
8000		errorMessage = message
8001	}
8002
8003	switch {
8004	default:
8005		genericError := &smithy.GenericAPIError{
8006			Code:    errorCode,
8007			Message: errorMessage,
8008		}
8009		return genericError
8010
8011	}
8012}
8013
8014type awsAwsjson11_deserializeOpSearchNetworkProfiles struct {
8015}
8016
8017func (*awsAwsjson11_deserializeOpSearchNetworkProfiles) ID() string {
8018	return "OperationDeserializer"
8019}
8020
8021func (m *awsAwsjson11_deserializeOpSearchNetworkProfiles) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8022	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8023) {
8024	out, metadata, err = next.HandleDeserialize(ctx, in)
8025	if err != nil {
8026		return out, metadata, err
8027	}
8028
8029	response, ok := out.RawResponse.(*smithyhttp.Response)
8030	if !ok {
8031		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8032	}
8033
8034	if response.StatusCode < 200 || response.StatusCode >= 300 {
8035		return out, metadata, awsAwsjson11_deserializeOpErrorSearchNetworkProfiles(response, &metadata)
8036	}
8037	output := &SearchNetworkProfilesOutput{}
8038	out.Result = output
8039
8040	var buff [1024]byte
8041	ringBuffer := smithyio.NewRingBuffer(buff[:])
8042
8043	body := io.TeeReader(response.Body, ringBuffer)
8044	decoder := json.NewDecoder(body)
8045	decoder.UseNumber()
8046	var shape interface{}
8047	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8048		var snapshot bytes.Buffer
8049		io.Copy(&snapshot, ringBuffer)
8050		err = &smithy.DeserializationError{
8051			Err:      fmt.Errorf("failed to decode response body, %w", err),
8052			Snapshot: snapshot.Bytes(),
8053		}
8054		return out, metadata, err
8055	}
8056
8057	err = awsAwsjson11_deserializeOpDocumentSearchNetworkProfilesOutput(&output, shape)
8058	if err != nil {
8059		var snapshot bytes.Buffer
8060		io.Copy(&snapshot, ringBuffer)
8061		err = &smithy.DeserializationError{
8062			Err:      fmt.Errorf("failed to decode response body, %w", err),
8063			Snapshot: snapshot.Bytes(),
8064		}
8065		return out, metadata, err
8066	}
8067
8068	return out, metadata, err
8069}
8070
8071func awsAwsjson11_deserializeOpErrorSearchNetworkProfiles(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8072	var errorBuffer bytes.Buffer
8073	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8074		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8075	}
8076	errorBody := bytes.NewReader(errorBuffer.Bytes())
8077
8078	errorCode := "UnknownError"
8079	errorMessage := errorCode
8080
8081	code := response.Header.Get("X-Amzn-ErrorType")
8082	if len(code) != 0 {
8083		errorCode = restjson.SanitizeErrorCode(code)
8084	}
8085
8086	var buff [1024]byte
8087	ringBuffer := smithyio.NewRingBuffer(buff[:])
8088
8089	body := io.TeeReader(errorBody, ringBuffer)
8090	decoder := json.NewDecoder(body)
8091	decoder.UseNumber()
8092	code, message, err := restjson.GetErrorInfo(decoder)
8093	if err != nil {
8094		var snapshot bytes.Buffer
8095		io.Copy(&snapshot, ringBuffer)
8096		err = &smithy.DeserializationError{
8097			Err:      fmt.Errorf("failed to decode response body, %w", err),
8098			Snapshot: snapshot.Bytes(),
8099		}
8100		return err
8101	}
8102
8103	errorBody.Seek(0, io.SeekStart)
8104	if len(code) != 0 {
8105		errorCode = restjson.SanitizeErrorCode(code)
8106	}
8107	if len(message) != 0 {
8108		errorMessage = message
8109	}
8110
8111	switch {
8112	default:
8113		genericError := &smithy.GenericAPIError{
8114			Code:    errorCode,
8115			Message: errorMessage,
8116		}
8117		return genericError
8118
8119	}
8120}
8121
8122type awsAwsjson11_deserializeOpSearchProfiles struct {
8123}
8124
8125func (*awsAwsjson11_deserializeOpSearchProfiles) ID() string {
8126	return "OperationDeserializer"
8127}
8128
8129func (m *awsAwsjson11_deserializeOpSearchProfiles) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8130	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8131) {
8132	out, metadata, err = next.HandleDeserialize(ctx, in)
8133	if err != nil {
8134		return out, metadata, err
8135	}
8136
8137	response, ok := out.RawResponse.(*smithyhttp.Response)
8138	if !ok {
8139		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8140	}
8141
8142	if response.StatusCode < 200 || response.StatusCode >= 300 {
8143		return out, metadata, awsAwsjson11_deserializeOpErrorSearchProfiles(response, &metadata)
8144	}
8145	output := &SearchProfilesOutput{}
8146	out.Result = output
8147
8148	var buff [1024]byte
8149	ringBuffer := smithyio.NewRingBuffer(buff[:])
8150
8151	body := io.TeeReader(response.Body, ringBuffer)
8152	decoder := json.NewDecoder(body)
8153	decoder.UseNumber()
8154	var shape interface{}
8155	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8156		var snapshot bytes.Buffer
8157		io.Copy(&snapshot, ringBuffer)
8158		err = &smithy.DeserializationError{
8159			Err:      fmt.Errorf("failed to decode response body, %w", err),
8160			Snapshot: snapshot.Bytes(),
8161		}
8162		return out, metadata, err
8163	}
8164
8165	err = awsAwsjson11_deserializeOpDocumentSearchProfilesOutput(&output, shape)
8166	if err != nil {
8167		var snapshot bytes.Buffer
8168		io.Copy(&snapshot, ringBuffer)
8169		err = &smithy.DeserializationError{
8170			Err:      fmt.Errorf("failed to decode response body, %w", err),
8171			Snapshot: snapshot.Bytes(),
8172		}
8173		return out, metadata, err
8174	}
8175
8176	return out, metadata, err
8177}
8178
8179func awsAwsjson11_deserializeOpErrorSearchProfiles(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8180	var errorBuffer bytes.Buffer
8181	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8182		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8183	}
8184	errorBody := bytes.NewReader(errorBuffer.Bytes())
8185
8186	errorCode := "UnknownError"
8187	errorMessage := errorCode
8188
8189	code := response.Header.Get("X-Amzn-ErrorType")
8190	if len(code) != 0 {
8191		errorCode = restjson.SanitizeErrorCode(code)
8192	}
8193
8194	var buff [1024]byte
8195	ringBuffer := smithyio.NewRingBuffer(buff[:])
8196
8197	body := io.TeeReader(errorBody, ringBuffer)
8198	decoder := json.NewDecoder(body)
8199	decoder.UseNumber()
8200	code, message, err := restjson.GetErrorInfo(decoder)
8201	if err != nil {
8202		var snapshot bytes.Buffer
8203		io.Copy(&snapshot, ringBuffer)
8204		err = &smithy.DeserializationError{
8205			Err:      fmt.Errorf("failed to decode response body, %w", err),
8206			Snapshot: snapshot.Bytes(),
8207		}
8208		return err
8209	}
8210
8211	errorBody.Seek(0, io.SeekStart)
8212	if len(code) != 0 {
8213		errorCode = restjson.SanitizeErrorCode(code)
8214	}
8215	if len(message) != 0 {
8216		errorMessage = message
8217	}
8218
8219	switch {
8220	default:
8221		genericError := &smithy.GenericAPIError{
8222			Code:    errorCode,
8223			Message: errorMessage,
8224		}
8225		return genericError
8226
8227	}
8228}
8229
8230type awsAwsjson11_deserializeOpSearchRooms struct {
8231}
8232
8233func (*awsAwsjson11_deserializeOpSearchRooms) ID() string {
8234	return "OperationDeserializer"
8235}
8236
8237func (m *awsAwsjson11_deserializeOpSearchRooms) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8238	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8239) {
8240	out, metadata, err = next.HandleDeserialize(ctx, in)
8241	if err != nil {
8242		return out, metadata, err
8243	}
8244
8245	response, ok := out.RawResponse.(*smithyhttp.Response)
8246	if !ok {
8247		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8248	}
8249
8250	if response.StatusCode < 200 || response.StatusCode >= 300 {
8251		return out, metadata, awsAwsjson11_deserializeOpErrorSearchRooms(response, &metadata)
8252	}
8253	output := &SearchRoomsOutput{}
8254	out.Result = output
8255
8256	var buff [1024]byte
8257	ringBuffer := smithyio.NewRingBuffer(buff[:])
8258
8259	body := io.TeeReader(response.Body, ringBuffer)
8260	decoder := json.NewDecoder(body)
8261	decoder.UseNumber()
8262	var shape interface{}
8263	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8264		var snapshot bytes.Buffer
8265		io.Copy(&snapshot, ringBuffer)
8266		err = &smithy.DeserializationError{
8267			Err:      fmt.Errorf("failed to decode response body, %w", err),
8268			Snapshot: snapshot.Bytes(),
8269		}
8270		return out, metadata, err
8271	}
8272
8273	err = awsAwsjson11_deserializeOpDocumentSearchRoomsOutput(&output, shape)
8274	if err != nil {
8275		var snapshot bytes.Buffer
8276		io.Copy(&snapshot, ringBuffer)
8277		err = &smithy.DeserializationError{
8278			Err:      fmt.Errorf("failed to decode response body, %w", err),
8279			Snapshot: snapshot.Bytes(),
8280		}
8281		return out, metadata, err
8282	}
8283
8284	return out, metadata, err
8285}
8286
8287func awsAwsjson11_deserializeOpErrorSearchRooms(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8288	var errorBuffer bytes.Buffer
8289	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8290		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8291	}
8292	errorBody := bytes.NewReader(errorBuffer.Bytes())
8293
8294	errorCode := "UnknownError"
8295	errorMessage := errorCode
8296
8297	code := response.Header.Get("X-Amzn-ErrorType")
8298	if len(code) != 0 {
8299		errorCode = restjson.SanitizeErrorCode(code)
8300	}
8301
8302	var buff [1024]byte
8303	ringBuffer := smithyio.NewRingBuffer(buff[:])
8304
8305	body := io.TeeReader(errorBody, ringBuffer)
8306	decoder := json.NewDecoder(body)
8307	decoder.UseNumber()
8308	code, message, err := restjson.GetErrorInfo(decoder)
8309	if err != nil {
8310		var snapshot bytes.Buffer
8311		io.Copy(&snapshot, ringBuffer)
8312		err = &smithy.DeserializationError{
8313			Err:      fmt.Errorf("failed to decode response body, %w", err),
8314			Snapshot: snapshot.Bytes(),
8315		}
8316		return err
8317	}
8318
8319	errorBody.Seek(0, io.SeekStart)
8320	if len(code) != 0 {
8321		errorCode = restjson.SanitizeErrorCode(code)
8322	}
8323	if len(message) != 0 {
8324		errorMessage = message
8325	}
8326
8327	switch {
8328	default:
8329		genericError := &smithy.GenericAPIError{
8330			Code:    errorCode,
8331			Message: errorMessage,
8332		}
8333		return genericError
8334
8335	}
8336}
8337
8338type awsAwsjson11_deserializeOpSearchSkillGroups struct {
8339}
8340
8341func (*awsAwsjson11_deserializeOpSearchSkillGroups) ID() string {
8342	return "OperationDeserializer"
8343}
8344
8345func (m *awsAwsjson11_deserializeOpSearchSkillGroups) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8346	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8347) {
8348	out, metadata, err = next.HandleDeserialize(ctx, in)
8349	if err != nil {
8350		return out, metadata, err
8351	}
8352
8353	response, ok := out.RawResponse.(*smithyhttp.Response)
8354	if !ok {
8355		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8356	}
8357
8358	if response.StatusCode < 200 || response.StatusCode >= 300 {
8359		return out, metadata, awsAwsjson11_deserializeOpErrorSearchSkillGroups(response, &metadata)
8360	}
8361	output := &SearchSkillGroupsOutput{}
8362	out.Result = output
8363
8364	var buff [1024]byte
8365	ringBuffer := smithyio.NewRingBuffer(buff[:])
8366
8367	body := io.TeeReader(response.Body, ringBuffer)
8368	decoder := json.NewDecoder(body)
8369	decoder.UseNumber()
8370	var shape interface{}
8371	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8372		var snapshot bytes.Buffer
8373		io.Copy(&snapshot, ringBuffer)
8374		err = &smithy.DeserializationError{
8375			Err:      fmt.Errorf("failed to decode response body, %w", err),
8376			Snapshot: snapshot.Bytes(),
8377		}
8378		return out, metadata, err
8379	}
8380
8381	err = awsAwsjson11_deserializeOpDocumentSearchSkillGroupsOutput(&output, shape)
8382	if err != nil {
8383		var snapshot bytes.Buffer
8384		io.Copy(&snapshot, ringBuffer)
8385		err = &smithy.DeserializationError{
8386			Err:      fmt.Errorf("failed to decode response body, %w", err),
8387			Snapshot: snapshot.Bytes(),
8388		}
8389		return out, metadata, err
8390	}
8391
8392	return out, metadata, err
8393}
8394
8395func awsAwsjson11_deserializeOpErrorSearchSkillGroups(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8396	var errorBuffer bytes.Buffer
8397	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8398		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8399	}
8400	errorBody := bytes.NewReader(errorBuffer.Bytes())
8401
8402	errorCode := "UnknownError"
8403	errorMessage := errorCode
8404
8405	code := response.Header.Get("X-Amzn-ErrorType")
8406	if len(code) != 0 {
8407		errorCode = restjson.SanitizeErrorCode(code)
8408	}
8409
8410	var buff [1024]byte
8411	ringBuffer := smithyio.NewRingBuffer(buff[:])
8412
8413	body := io.TeeReader(errorBody, ringBuffer)
8414	decoder := json.NewDecoder(body)
8415	decoder.UseNumber()
8416	code, message, err := restjson.GetErrorInfo(decoder)
8417	if err != nil {
8418		var snapshot bytes.Buffer
8419		io.Copy(&snapshot, ringBuffer)
8420		err = &smithy.DeserializationError{
8421			Err:      fmt.Errorf("failed to decode response body, %w", err),
8422			Snapshot: snapshot.Bytes(),
8423		}
8424		return err
8425	}
8426
8427	errorBody.Seek(0, io.SeekStart)
8428	if len(code) != 0 {
8429		errorCode = restjson.SanitizeErrorCode(code)
8430	}
8431	if len(message) != 0 {
8432		errorMessage = message
8433	}
8434
8435	switch {
8436	default:
8437		genericError := &smithy.GenericAPIError{
8438			Code:    errorCode,
8439			Message: errorMessage,
8440		}
8441		return genericError
8442
8443	}
8444}
8445
8446type awsAwsjson11_deserializeOpSearchUsers struct {
8447}
8448
8449func (*awsAwsjson11_deserializeOpSearchUsers) ID() string {
8450	return "OperationDeserializer"
8451}
8452
8453func (m *awsAwsjson11_deserializeOpSearchUsers) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8454	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8455) {
8456	out, metadata, err = next.HandleDeserialize(ctx, in)
8457	if err != nil {
8458		return out, metadata, err
8459	}
8460
8461	response, ok := out.RawResponse.(*smithyhttp.Response)
8462	if !ok {
8463		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8464	}
8465
8466	if response.StatusCode < 200 || response.StatusCode >= 300 {
8467		return out, metadata, awsAwsjson11_deserializeOpErrorSearchUsers(response, &metadata)
8468	}
8469	output := &SearchUsersOutput{}
8470	out.Result = output
8471
8472	var buff [1024]byte
8473	ringBuffer := smithyio.NewRingBuffer(buff[:])
8474
8475	body := io.TeeReader(response.Body, ringBuffer)
8476	decoder := json.NewDecoder(body)
8477	decoder.UseNumber()
8478	var shape interface{}
8479	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8480		var snapshot bytes.Buffer
8481		io.Copy(&snapshot, ringBuffer)
8482		err = &smithy.DeserializationError{
8483			Err:      fmt.Errorf("failed to decode response body, %w", err),
8484			Snapshot: snapshot.Bytes(),
8485		}
8486		return out, metadata, err
8487	}
8488
8489	err = awsAwsjson11_deserializeOpDocumentSearchUsersOutput(&output, shape)
8490	if err != nil {
8491		var snapshot bytes.Buffer
8492		io.Copy(&snapshot, ringBuffer)
8493		err = &smithy.DeserializationError{
8494			Err:      fmt.Errorf("failed to decode response body, %w", err),
8495			Snapshot: snapshot.Bytes(),
8496		}
8497		return out, metadata, err
8498	}
8499
8500	return out, metadata, err
8501}
8502
8503func awsAwsjson11_deserializeOpErrorSearchUsers(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8504	var errorBuffer bytes.Buffer
8505	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8506		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8507	}
8508	errorBody := bytes.NewReader(errorBuffer.Bytes())
8509
8510	errorCode := "UnknownError"
8511	errorMessage := errorCode
8512
8513	code := response.Header.Get("X-Amzn-ErrorType")
8514	if len(code) != 0 {
8515		errorCode = restjson.SanitizeErrorCode(code)
8516	}
8517
8518	var buff [1024]byte
8519	ringBuffer := smithyio.NewRingBuffer(buff[:])
8520
8521	body := io.TeeReader(errorBody, ringBuffer)
8522	decoder := json.NewDecoder(body)
8523	decoder.UseNumber()
8524	code, message, err := restjson.GetErrorInfo(decoder)
8525	if err != nil {
8526		var snapshot bytes.Buffer
8527		io.Copy(&snapshot, ringBuffer)
8528		err = &smithy.DeserializationError{
8529			Err:      fmt.Errorf("failed to decode response body, %w", err),
8530			Snapshot: snapshot.Bytes(),
8531		}
8532		return err
8533	}
8534
8535	errorBody.Seek(0, io.SeekStart)
8536	if len(code) != 0 {
8537		errorCode = restjson.SanitizeErrorCode(code)
8538	}
8539	if len(message) != 0 {
8540		errorMessage = message
8541	}
8542
8543	switch {
8544	default:
8545		genericError := &smithy.GenericAPIError{
8546			Code:    errorCode,
8547			Message: errorMessage,
8548		}
8549		return genericError
8550
8551	}
8552}
8553
8554type awsAwsjson11_deserializeOpSendAnnouncement struct {
8555}
8556
8557func (*awsAwsjson11_deserializeOpSendAnnouncement) ID() string {
8558	return "OperationDeserializer"
8559}
8560
8561func (m *awsAwsjson11_deserializeOpSendAnnouncement) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8562	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8563) {
8564	out, metadata, err = next.HandleDeserialize(ctx, in)
8565	if err != nil {
8566		return out, metadata, err
8567	}
8568
8569	response, ok := out.RawResponse.(*smithyhttp.Response)
8570	if !ok {
8571		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8572	}
8573
8574	if response.StatusCode < 200 || response.StatusCode >= 300 {
8575		return out, metadata, awsAwsjson11_deserializeOpErrorSendAnnouncement(response, &metadata)
8576	}
8577	output := &SendAnnouncementOutput{}
8578	out.Result = output
8579
8580	var buff [1024]byte
8581	ringBuffer := smithyio.NewRingBuffer(buff[:])
8582
8583	body := io.TeeReader(response.Body, ringBuffer)
8584	decoder := json.NewDecoder(body)
8585	decoder.UseNumber()
8586	var shape interface{}
8587	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8588		var snapshot bytes.Buffer
8589		io.Copy(&snapshot, ringBuffer)
8590		err = &smithy.DeserializationError{
8591			Err:      fmt.Errorf("failed to decode response body, %w", err),
8592			Snapshot: snapshot.Bytes(),
8593		}
8594		return out, metadata, err
8595	}
8596
8597	err = awsAwsjson11_deserializeOpDocumentSendAnnouncementOutput(&output, shape)
8598	if err != nil {
8599		var snapshot bytes.Buffer
8600		io.Copy(&snapshot, ringBuffer)
8601		err = &smithy.DeserializationError{
8602			Err:      fmt.Errorf("failed to decode response body, %w", err),
8603			Snapshot: snapshot.Bytes(),
8604		}
8605		return out, metadata, err
8606	}
8607
8608	return out, metadata, err
8609}
8610
8611func awsAwsjson11_deserializeOpErrorSendAnnouncement(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8612	var errorBuffer bytes.Buffer
8613	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8614		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8615	}
8616	errorBody := bytes.NewReader(errorBuffer.Bytes())
8617
8618	errorCode := "UnknownError"
8619	errorMessage := errorCode
8620
8621	code := response.Header.Get("X-Amzn-ErrorType")
8622	if len(code) != 0 {
8623		errorCode = restjson.SanitizeErrorCode(code)
8624	}
8625
8626	var buff [1024]byte
8627	ringBuffer := smithyio.NewRingBuffer(buff[:])
8628
8629	body := io.TeeReader(errorBody, ringBuffer)
8630	decoder := json.NewDecoder(body)
8631	decoder.UseNumber()
8632	code, message, err := restjson.GetErrorInfo(decoder)
8633	if err != nil {
8634		var snapshot bytes.Buffer
8635		io.Copy(&snapshot, ringBuffer)
8636		err = &smithy.DeserializationError{
8637			Err:      fmt.Errorf("failed to decode response body, %w", err),
8638			Snapshot: snapshot.Bytes(),
8639		}
8640		return err
8641	}
8642
8643	errorBody.Seek(0, io.SeekStart)
8644	if len(code) != 0 {
8645		errorCode = restjson.SanitizeErrorCode(code)
8646	}
8647	if len(message) != 0 {
8648		errorMessage = message
8649	}
8650
8651	switch {
8652	case strings.EqualFold("AlreadyExistsException", errorCode):
8653		return awsAwsjson11_deserializeErrorAlreadyExistsException(response, errorBody)
8654
8655	case strings.EqualFold("LimitExceededException", errorCode):
8656		return awsAwsjson11_deserializeErrorLimitExceededException(response, errorBody)
8657
8658	default:
8659		genericError := &smithy.GenericAPIError{
8660			Code:    errorCode,
8661			Message: errorMessage,
8662		}
8663		return genericError
8664
8665	}
8666}
8667
8668type awsAwsjson11_deserializeOpSendInvitation struct {
8669}
8670
8671func (*awsAwsjson11_deserializeOpSendInvitation) ID() string {
8672	return "OperationDeserializer"
8673}
8674
8675func (m *awsAwsjson11_deserializeOpSendInvitation) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8676	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8677) {
8678	out, metadata, err = next.HandleDeserialize(ctx, in)
8679	if err != nil {
8680		return out, metadata, err
8681	}
8682
8683	response, ok := out.RawResponse.(*smithyhttp.Response)
8684	if !ok {
8685		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8686	}
8687
8688	if response.StatusCode < 200 || response.StatusCode >= 300 {
8689		return out, metadata, awsAwsjson11_deserializeOpErrorSendInvitation(response, &metadata)
8690	}
8691	output := &SendInvitationOutput{}
8692	out.Result = output
8693
8694	var buff [1024]byte
8695	ringBuffer := smithyio.NewRingBuffer(buff[:])
8696
8697	body := io.TeeReader(response.Body, ringBuffer)
8698	decoder := json.NewDecoder(body)
8699	decoder.UseNumber()
8700	var shape interface{}
8701	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8702		var snapshot bytes.Buffer
8703		io.Copy(&snapshot, ringBuffer)
8704		err = &smithy.DeserializationError{
8705			Err:      fmt.Errorf("failed to decode response body, %w", err),
8706			Snapshot: snapshot.Bytes(),
8707		}
8708		return out, metadata, err
8709	}
8710
8711	err = awsAwsjson11_deserializeOpDocumentSendInvitationOutput(&output, shape)
8712	if err != nil {
8713		var snapshot bytes.Buffer
8714		io.Copy(&snapshot, ringBuffer)
8715		err = &smithy.DeserializationError{
8716			Err:      fmt.Errorf("failed to decode response body, %w", err),
8717			Snapshot: snapshot.Bytes(),
8718		}
8719		return out, metadata, err
8720	}
8721
8722	return out, metadata, err
8723}
8724
8725func awsAwsjson11_deserializeOpErrorSendInvitation(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8726	var errorBuffer bytes.Buffer
8727	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8728		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8729	}
8730	errorBody := bytes.NewReader(errorBuffer.Bytes())
8731
8732	errorCode := "UnknownError"
8733	errorMessage := errorCode
8734
8735	code := response.Header.Get("X-Amzn-ErrorType")
8736	if len(code) != 0 {
8737		errorCode = restjson.SanitizeErrorCode(code)
8738	}
8739
8740	var buff [1024]byte
8741	ringBuffer := smithyio.NewRingBuffer(buff[:])
8742
8743	body := io.TeeReader(errorBody, ringBuffer)
8744	decoder := json.NewDecoder(body)
8745	decoder.UseNumber()
8746	code, message, err := restjson.GetErrorInfo(decoder)
8747	if err != nil {
8748		var snapshot bytes.Buffer
8749		io.Copy(&snapshot, ringBuffer)
8750		err = &smithy.DeserializationError{
8751			Err:      fmt.Errorf("failed to decode response body, %w", err),
8752			Snapshot: snapshot.Bytes(),
8753		}
8754		return err
8755	}
8756
8757	errorBody.Seek(0, io.SeekStart)
8758	if len(code) != 0 {
8759		errorCode = restjson.SanitizeErrorCode(code)
8760	}
8761	if len(message) != 0 {
8762		errorMessage = message
8763	}
8764
8765	switch {
8766	case strings.EqualFold("ConcurrentModificationException", errorCode):
8767		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
8768
8769	case strings.EqualFold("InvalidUserStatusException", errorCode):
8770		return awsAwsjson11_deserializeErrorInvalidUserStatusException(response, errorBody)
8771
8772	case strings.EqualFold("NotFoundException", errorCode):
8773		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
8774
8775	default:
8776		genericError := &smithy.GenericAPIError{
8777			Code:    errorCode,
8778			Message: errorMessage,
8779		}
8780		return genericError
8781
8782	}
8783}
8784
8785type awsAwsjson11_deserializeOpStartDeviceSync struct {
8786}
8787
8788func (*awsAwsjson11_deserializeOpStartDeviceSync) ID() string {
8789	return "OperationDeserializer"
8790}
8791
8792func (m *awsAwsjson11_deserializeOpStartDeviceSync) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8793	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8794) {
8795	out, metadata, err = next.HandleDeserialize(ctx, in)
8796	if err != nil {
8797		return out, metadata, err
8798	}
8799
8800	response, ok := out.RawResponse.(*smithyhttp.Response)
8801	if !ok {
8802		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8803	}
8804
8805	if response.StatusCode < 200 || response.StatusCode >= 300 {
8806		return out, metadata, awsAwsjson11_deserializeOpErrorStartDeviceSync(response, &metadata)
8807	}
8808	output := &StartDeviceSyncOutput{}
8809	out.Result = output
8810
8811	var buff [1024]byte
8812	ringBuffer := smithyio.NewRingBuffer(buff[:])
8813
8814	body := io.TeeReader(response.Body, ringBuffer)
8815	decoder := json.NewDecoder(body)
8816	decoder.UseNumber()
8817	var shape interface{}
8818	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8819		var snapshot bytes.Buffer
8820		io.Copy(&snapshot, ringBuffer)
8821		err = &smithy.DeserializationError{
8822			Err:      fmt.Errorf("failed to decode response body, %w", err),
8823			Snapshot: snapshot.Bytes(),
8824		}
8825		return out, metadata, err
8826	}
8827
8828	err = awsAwsjson11_deserializeOpDocumentStartDeviceSyncOutput(&output, shape)
8829	if err != nil {
8830		var snapshot bytes.Buffer
8831		io.Copy(&snapshot, ringBuffer)
8832		err = &smithy.DeserializationError{
8833			Err:      fmt.Errorf("failed to decode response body, %w", err),
8834			Snapshot: snapshot.Bytes(),
8835		}
8836		return out, metadata, err
8837	}
8838
8839	return out, metadata, err
8840}
8841
8842func awsAwsjson11_deserializeOpErrorStartDeviceSync(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8843	var errorBuffer bytes.Buffer
8844	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8845		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8846	}
8847	errorBody := bytes.NewReader(errorBuffer.Bytes())
8848
8849	errorCode := "UnknownError"
8850	errorMessage := errorCode
8851
8852	code := response.Header.Get("X-Amzn-ErrorType")
8853	if len(code) != 0 {
8854		errorCode = restjson.SanitizeErrorCode(code)
8855	}
8856
8857	var buff [1024]byte
8858	ringBuffer := smithyio.NewRingBuffer(buff[:])
8859
8860	body := io.TeeReader(errorBody, ringBuffer)
8861	decoder := json.NewDecoder(body)
8862	decoder.UseNumber()
8863	code, message, err := restjson.GetErrorInfo(decoder)
8864	if err != nil {
8865		var snapshot bytes.Buffer
8866		io.Copy(&snapshot, ringBuffer)
8867		err = &smithy.DeserializationError{
8868			Err:      fmt.Errorf("failed to decode response body, %w", err),
8869			Snapshot: snapshot.Bytes(),
8870		}
8871		return err
8872	}
8873
8874	errorBody.Seek(0, io.SeekStart)
8875	if len(code) != 0 {
8876		errorCode = restjson.SanitizeErrorCode(code)
8877	}
8878	if len(message) != 0 {
8879		errorMessage = message
8880	}
8881
8882	switch {
8883	case strings.EqualFold("DeviceNotRegisteredException", errorCode):
8884		return awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response, errorBody)
8885
8886	default:
8887		genericError := &smithy.GenericAPIError{
8888			Code:    errorCode,
8889			Message: errorMessage,
8890		}
8891		return genericError
8892
8893	}
8894}
8895
8896type awsAwsjson11_deserializeOpStartSmartHomeApplianceDiscovery struct {
8897}
8898
8899func (*awsAwsjson11_deserializeOpStartSmartHomeApplianceDiscovery) ID() string {
8900	return "OperationDeserializer"
8901}
8902
8903func (m *awsAwsjson11_deserializeOpStartSmartHomeApplianceDiscovery) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
8904	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
8905) {
8906	out, metadata, err = next.HandleDeserialize(ctx, in)
8907	if err != nil {
8908		return out, metadata, err
8909	}
8910
8911	response, ok := out.RawResponse.(*smithyhttp.Response)
8912	if !ok {
8913		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
8914	}
8915
8916	if response.StatusCode < 200 || response.StatusCode >= 300 {
8917		return out, metadata, awsAwsjson11_deserializeOpErrorStartSmartHomeApplianceDiscovery(response, &metadata)
8918	}
8919	output := &StartSmartHomeApplianceDiscoveryOutput{}
8920	out.Result = output
8921
8922	var buff [1024]byte
8923	ringBuffer := smithyio.NewRingBuffer(buff[:])
8924
8925	body := io.TeeReader(response.Body, ringBuffer)
8926	decoder := json.NewDecoder(body)
8927	decoder.UseNumber()
8928	var shape interface{}
8929	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
8930		var snapshot bytes.Buffer
8931		io.Copy(&snapshot, ringBuffer)
8932		err = &smithy.DeserializationError{
8933			Err:      fmt.Errorf("failed to decode response body, %w", err),
8934			Snapshot: snapshot.Bytes(),
8935		}
8936		return out, metadata, err
8937	}
8938
8939	err = awsAwsjson11_deserializeOpDocumentStartSmartHomeApplianceDiscoveryOutput(&output, shape)
8940	if err != nil {
8941		var snapshot bytes.Buffer
8942		io.Copy(&snapshot, ringBuffer)
8943		err = &smithy.DeserializationError{
8944			Err:      fmt.Errorf("failed to decode response body, %w", err),
8945			Snapshot: snapshot.Bytes(),
8946		}
8947		return out, metadata, err
8948	}
8949
8950	return out, metadata, err
8951}
8952
8953func awsAwsjson11_deserializeOpErrorStartSmartHomeApplianceDiscovery(response *smithyhttp.Response, metadata *middleware.Metadata) error {
8954	var errorBuffer bytes.Buffer
8955	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
8956		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
8957	}
8958	errorBody := bytes.NewReader(errorBuffer.Bytes())
8959
8960	errorCode := "UnknownError"
8961	errorMessage := errorCode
8962
8963	code := response.Header.Get("X-Amzn-ErrorType")
8964	if len(code) != 0 {
8965		errorCode = restjson.SanitizeErrorCode(code)
8966	}
8967
8968	var buff [1024]byte
8969	ringBuffer := smithyio.NewRingBuffer(buff[:])
8970
8971	body := io.TeeReader(errorBody, ringBuffer)
8972	decoder := json.NewDecoder(body)
8973	decoder.UseNumber()
8974	code, message, err := restjson.GetErrorInfo(decoder)
8975	if err != nil {
8976		var snapshot bytes.Buffer
8977		io.Copy(&snapshot, ringBuffer)
8978		err = &smithy.DeserializationError{
8979			Err:      fmt.Errorf("failed to decode response body, %w", err),
8980			Snapshot: snapshot.Bytes(),
8981		}
8982		return err
8983	}
8984
8985	errorBody.Seek(0, io.SeekStart)
8986	if len(code) != 0 {
8987		errorCode = restjson.SanitizeErrorCode(code)
8988	}
8989	if len(message) != 0 {
8990		errorMessage = message
8991	}
8992
8993	switch {
8994	case strings.EqualFold("NotFoundException", errorCode):
8995		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
8996
8997	default:
8998		genericError := &smithy.GenericAPIError{
8999			Code:    errorCode,
9000			Message: errorMessage,
9001		}
9002		return genericError
9003
9004	}
9005}
9006
9007type awsAwsjson11_deserializeOpTagResource struct {
9008}
9009
9010func (*awsAwsjson11_deserializeOpTagResource) ID() string {
9011	return "OperationDeserializer"
9012}
9013
9014func (m *awsAwsjson11_deserializeOpTagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9015	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9016) {
9017	out, metadata, err = next.HandleDeserialize(ctx, in)
9018	if err != nil {
9019		return out, metadata, err
9020	}
9021
9022	response, ok := out.RawResponse.(*smithyhttp.Response)
9023	if !ok {
9024		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9025	}
9026
9027	if response.StatusCode < 200 || response.StatusCode >= 300 {
9028		return out, metadata, awsAwsjson11_deserializeOpErrorTagResource(response, &metadata)
9029	}
9030	output := &TagResourceOutput{}
9031	out.Result = output
9032
9033	var buff [1024]byte
9034	ringBuffer := smithyio.NewRingBuffer(buff[:])
9035
9036	body := io.TeeReader(response.Body, ringBuffer)
9037	decoder := json.NewDecoder(body)
9038	decoder.UseNumber()
9039	var shape interface{}
9040	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9041		var snapshot bytes.Buffer
9042		io.Copy(&snapshot, ringBuffer)
9043		err = &smithy.DeserializationError{
9044			Err:      fmt.Errorf("failed to decode response body, %w", err),
9045			Snapshot: snapshot.Bytes(),
9046		}
9047		return out, metadata, err
9048	}
9049
9050	err = awsAwsjson11_deserializeOpDocumentTagResourceOutput(&output, shape)
9051	if err != nil {
9052		var snapshot bytes.Buffer
9053		io.Copy(&snapshot, ringBuffer)
9054		err = &smithy.DeserializationError{
9055			Err:      fmt.Errorf("failed to decode response body, %w", err),
9056			Snapshot: snapshot.Bytes(),
9057		}
9058		return out, metadata, err
9059	}
9060
9061	return out, metadata, err
9062}
9063
9064func awsAwsjson11_deserializeOpErrorTagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9065	var errorBuffer bytes.Buffer
9066	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9067		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9068	}
9069	errorBody := bytes.NewReader(errorBuffer.Bytes())
9070
9071	errorCode := "UnknownError"
9072	errorMessage := errorCode
9073
9074	code := response.Header.Get("X-Amzn-ErrorType")
9075	if len(code) != 0 {
9076		errorCode = restjson.SanitizeErrorCode(code)
9077	}
9078
9079	var buff [1024]byte
9080	ringBuffer := smithyio.NewRingBuffer(buff[:])
9081
9082	body := io.TeeReader(errorBody, ringBuffer)
9083	decoder := json.NewDecoder(body)
9084	decoder.UseNumber()
9085	code, message, err := restjson.GetErrorInfo(decoder)
9086	if err != nil {
9087		var snapshot bytes.Buffer
9088		io.Copy(&snapshot, ringBuffer)
9089		err = &smithy.DeserializationError{
9090			Err:      fmt.Errorf("failed to decode response body, %w", err),
9091			Snapshot: snapshot.Bytes(),
9092		}
9093		return err
9094	}
9095
9096	errorBody.Seek(0, io.SeekStart)
9097	if len(code) != 0 {
9098		errorCode = restjson.SanitizeErrorCode(code)
9099	}
9100	if len(message) != 0 {
9101		errorMessage = message
9102	}
9103
9104	switch {
9105	case strings.EqualFold("NotFoundException", errorCode):
9106		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9107
9108	default:
9109		genericError := &smithy.GenericAPIError{
9110			Code:    errorCode,
9111			Message: errorMessage,
9112		}
9113		return genericError
9114
9115	}
9116}
9117
9118type awsAwsjson11_deserializeOpUntagResource struct {
9119}
9120
9121func (*awsAwsjson11_deserializeOpUntagResource) ID() string {
9122	return "OperationDeserializer"
9123}
9124
9125func (m *awsAwsjson11_deserializeOpUntagResource) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9126	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9127) {
9128	out, metadata, err = next.HandleDeserialize(ctx, in)
9129	if err != nil {
9130		return out, metadata, err
9131	}
9132
9133	response, ok := out.RawResponse.(*smithyhttp.Response)
9134	if !ok {
9135		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9136	}
9137
9138	if response.StatusCode < 200 || response.StatusCode >= 300 {
9139		return out, metadata, awsAwsjson11_deserializeOpErrorUntagResource(response, &metadata)
9140	}
9141	output := &UntagResourceOutput{}
9142	out.Result = output
9143
9144	var buff [1024]byte
9145	ringBuffer := smithyio.NewRingBuffer(buff[:])
9146
9147	body := io.TeeReader(response.Body, ringBuffer)
9148	decoder := json.NewDecoder(body)
9149	decoder.UseNumber()
9150	var shape interface{}
9151	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9152		var snapshot bytes.Buffer
9153		io.Copy(&snapshot, ringBuffer)
9154		err = &smithy.DeserializationError{
9155			Err:      fmt.Errorf("failed to decode response body, %w", err),
9156			Snapshot: snapshot.Bytes(),
9157		}
9158		return out, metadata, err
9159	}
9160
9161	err = awsAwsjson11_deserializeOpDocumentUntagResourceOutput(&output, shape)
9162	if err != nil {
9163		var snapshot bytes.Buffer
9164		io.Copy(&snapshot, ringBuffer)
9165		err = &smithy.DeserializationError{
9166			Err:      fmt.Errorf("failed to decode response body, %w", err),
9167			Snapshot: snapshot.Bytes(),
9168		}
9169		return out, metadata, err
9170	}
9171
9172	return out, metadata, err
9173}
9174
9175func awsAwsjson11_deserializeOpErrorUntagResource(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9176	var errorBuffer bytes.Buffer
9177	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9178		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9179	}
9180	errorBody := bytes.NewReader(errorBuffer.Bytes())
9181
9182	errorCode := "UnknownError"
9183	errorMessage := errorCode
9184
9185	code := response.Header.Get("X-Amzn-ErrorType")
9186	if len(code) != 0 {
9187		errorCode = restjson.SanitizeErrorCode(code)
9188	}
9189
9190	var buff [1024]byte
9191	ringBuffer := smithyio.NewRingBuffer(buff[:])
9192
9193	body := io.TeeReader(errorBody, ringBuffer)
9194	decoder := json.NewDecoder(body)
9195	decoder.UseNumber()
9196	code, message, err := restjson.GetErrorInfo(decoder)
9197	if err != nil {
9198		var snapshot bytes.Buffer
9199		io.Copy(&snapshot, ringBuffer)
9200		err = &smithy.DeserializationError{
9201			Err:      fmt.Errorf("failed to decode response body, %w", err),
9202			Snapshot: snapshot.Bytes(),
9203		}
9204		return err
9205	}
9206
9207	errorBody.Seek(0, io.SeekStart)
9208	if len(code) != 0 {
9209		errorCode = restjson.SanitizeErrorCode(code)
9210	}
9211	if len(message) != 0 {
9212		errorMessage = message
9213	}
9214
9215	switch {
9216	case strings.EqualFold("NotFoundException", errorCode):
9217		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9218
9219	default:
9220		genericError := &smithy.GenericAPIError{
9221			Code:    errorCode,
9222			Message: errorMessage,
9223		}
9224		return genericError
9225
9226	}
9227}
9228
9229type awsAwsjson11_deserializeOpUpdateAddressBook struct {
9230}
9231
9232func (*awsAwsjson11_deserializeOpUpdateAddressBook) ID() string {
9233	return "OperationDeserializer"
9234}
9235
9236func (m *awsAwsjson11_deserializeOpUpdateAddressBook) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9237	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9238) {
9239	out, metadata, err = next.HandleDeserialize(ctx, in)
9240	if err != nil {
9241		return out, metadata, err
9242	}
9243
9244	response, ok := out.RawResponse.(*smithyhttp.Response)
9245	if !ok {
9246		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9247	}
9248
9249	if response.StatusCode < 200 || response.StatusCode >= 300 {
9250		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateAddressBook(response, &metadata)
9251	}
9252	output := &UpdateAddressBookOutput{}
9253	out.Result = output
9254
9255	var buff [1024]byte
9256	ringBuffer := smithyio.NewRingBuffer(buff[:])
9257
9258	body := io.TeeReader(response.Body, ringBuffer)
9259	decoder := json.NewDecoder(body)
9260	decoder.UseNumber()
9261	var shape interface{}
9262	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9263		var snapshot bytes.Buffer
9264		io.Copy(&snapshot, ringBuffer)
9265		err = &smithy.DeserializationError{
9266			Err:      fmt.Errorf("failed to decode response body, %w", err),
9267			Snapshot: snapshot.Bytes(),
9268		}
9269		return out, metadata, err
9270	}
9271
9272	err = awsAwsjson11_deserializeOpDocumentUpdateAddressBookOutput(&output, shape)
9273	if err != nil {
9274		var snapshot bytes.Buffer
9275		io.Copy(&snapshot, ringBuffer)
9276		err = &smithy.DeserializationError{
9277			Err:      fmt.Errorf("failed to decode response body, %w", err),
9278			Snapshot: snapshot.Bytes(),
9279		}
9280		return out, metadata, err
9281	}
9282
9283	return out, metadata, err
9284}
9285
9286func awsAwsjson11_deserializeOpErrorUpdateAddressBook(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9287	var errorBuffer bytes.Buffer
9288	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9289		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9290	}
9291	errorBody := bytes.NewReader(errorBuffer.Bytes())
9292
9293	errorCode := "UnknownError"
9294	errorMessage := errorCode
9295
9296	code := response.Header.Get("X-Amzn-ErrorType")
9297	if len(code) != 0 {
9298		errorCode = restjson.SanitizeErrorCode(code)
9299	}
9300
9301	var buff [1024]byte
9302	ringBuffer := smithyio.NewRingBuffer(buff[:])
9303
9304	body := io.TeeReader(errorBody, ringBuffer)
9305	decoder := json.NewDecoder(body)
9306	decoder.UseNumber()
9307	code, message, err := restjson.GetErrorInfo(decoder)
9308	if err != nil {
9309		var snapshot bytes.Buffer
9310		io.Copy(&snapshot, ringBuffer)
9311		err = &smithy.DeserializationError{
9312			Err:      fmt.Errorf("failed to decode response body, %w", err),
9313			Snapshot: snapshot.Bytes(),
9314		}
9315		return err
9316	}
9317
9318	errorBody.Seek(0, io.SeekStart)
9319	if len(code) != 0 {
9320		errorCode = restjson.SanitizeErrorCode(code)
9321	}
9322	if len(message) != 0 {
9323		errorMessage = message
9324	}
9325
9326	switch {
9327	case strings.EqualFold("ConcurrentModificationException", errorCode):
9328		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
9329
9330	case strings.EqualFold("NameInUseException", errorCode):
9331		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
9332
9333	case strings.EqualFold("NotFoundException", errorCode):
9334		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9335
9336	default:
9337		genericError := &smithy.GenericAPIError{
9338			Code:    errorCode,
9339			Message: errorMessage,
9340		}
9341		return genericError
9342
9343	}
9344}
9345
9346type awsAwsjson11_deserializeOpUpdateBusinessReportSchedule struct {
9347}
9348
9349func (*awsAwsjson11_deserializeOpUpdateBusinessReportSchedule) ID() string {
9350	return "OperationDeserializer"
9351}
9352
9353func (m *awsAwsjson11_deserializeOpUpdateBusinessReportSchedule) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9354	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9355) {
9356	out, metadata, err = next.HandleDeserialize(ctx, in)
9357	if err != nil {
9358		return out, metadata, err
9359	}
9360
9361	response, ok := out.RawResponse.(*smithyhttp.Response)
9362	if !ok {
9363		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9364	}
9365
9366	if response.StatusCode < 200 || response.StatusCode >= 300 {
9367		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateBusinessReportSchedule(response, &metadata)
9368	}
9369	output := &UpdateBusinessReportScheduleOutput{}
9370	out.Result = output
9371
9372	var buff [1024]byte
9373	ringBuffer := smithyio.NewRingBuffer(buff[:])
9374
9375	body := io.TeeReader(response.Body, ringBuffer)
9376	decoder := json.NewDecoder(body)
9377	decoder.UseNumber()
9378	var shape interface{}
9379	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9380		var snapshot bytes.Buffer
9381		io.Copy(&snapshot, ringBuffer)
9382		err = &smithy.DeserializationError{
9383			Err:      fmt.Errorf("failed to decode response body, %w", err),
9384			Snapshot: snapshot.Bytes(),
9385		}
9386		return out, metadata, err
9387	}
9388
9389	err = awsAwsjson11_deserializeOpDocumentUpdateBusinessReportScheduleOutput(&output, shape)
9390	if err != nil {
9391		var snapshot bytes.Buffer
9392		io.Copy(&snapshot, ringBuffer)
9393		err = &smithy.DeserializationError{
9394			Err:      fmt.Errorf("failed to decode response body, %w", err),
9395			Snapshot: snapshot.Bytes(),
9396		}
9397		return out, metadata, err
9398	}
9399
9400	return out, metadata, err
9401}
9402
9403func awsAwsjson11_deserializeOpErrorUpdateBusinessReportSchedule(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9404	var errorBuffer bytes.Buffer
9405	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9406		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9407	}
9408	errorBody := bytes.NewReader(errorBuffer.Bytes())
9409
9410	errorCode := "UnknownError"
9411	errorMessage := errorCode
9412
9413	code := response.Header.Get("X-Amzn-ErrorType")
9414	if len(code) != 0 {
9415		errorCode = restjson.SanitizeErrorCode(code)
9416	}
9417
9418	var buff [1024]byte
9419	ringBuffer := smithyio.NewRingBuffer(buff[:])
9420
9421	body := io.TeeReader(errorBody, ringBuffer)
9422	decoder := json.NewDecoder(body)
9423	decoder.UseNumber()
9424	code, message, err := restjson.GetErrorInfo(decoder)
9425	if err != nil {
9426		var snapshot bytes.Buffer
9427		io.Copy(&snapshot, ringBuffer)
9428		err = &smithy.DeserializationError{
9429			Err:      fmt.Errorf("failed to decode response body, %w", err),
9430			Snapshot: snapshot.Bytes(),
9431		}
9432		return err
9433	}
9434
9435	errorBody.Seek(0, io.SeekStart)
9436	if len(code) != 0 {
9437		errorCode = restjson.SanitizeErrorCode(code)
9438	}
9439	if len(message) != 0 {
9440		errorMessage = message
9441	}
9442
9443	switch {
9444	case strings.EqualFold("ConcurrentModificationException", errorCode):
9445		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
9446
9447	case strings.EqualFold("NotFoundException", errorCode):
9448		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9449
9450	default:
9451		genericError := &smithy.GenericAPIError{
9452			Code:    errorCode,
9453			Message: errorMessage,
9454		}
9455		return genericError
9456
9457	}
9458}
9459
9460type awsAwsjson11_deserializeOpUpdateConferenceProvider struct {
9461}
9462
9463func (*awsAwsjson11_deserializeOpUpdateConferenceProvider) ID() string {
9464	return "OperationDeserializer"
9465}
9466
9467func (m *awsAwsjson11_deserializeOpUpdateConferenceProvider) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9468	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9469) {
9470	out, metadata, err = next.HandleDeserialize(ctx, in)
9471	if err != nil {
9472		return out, metadata, err
9473	}
9474
9475	response, ok := out.RawResponse.(*smithyhttp.Response)
9476	if !ok {
9477		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9478	}
9479
9480	if response.StatusCode < 200 || response.StatusCode >= 300 {
9481		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateConferenceProvider(response, &metadata)
9482	}
9483	output := &UpdateConferenceProviderOutput{}
9484	out.Result = output
9485
9486	var buff [1024]byte
9487	ringBuffer := smithyio.NewRingBuffer(buff[:])
9488
9489	body := io.TeeReader(response.Body, ringBuffer)
9490	decoder := json.NewDecoder(body)
9491	decoder.UseNumber()
9492	var shape interface{}
9493	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9494		var snapshot bytes.Buffer
9495		io.Copy(&snapshot, ringBuffer)
9496		err = &smithy.DeserializationError{
9497			Err:      fmt.Errorf("failed to decode response body, %w", err),
9498			Snapshot: snapshot.Bytes(),
9499		}
9500		return out, metadata, err
9501	}
9502
9503	err = awsAwsjson11_deserializeOpDocumentUpdateConferenceProviderOutput(&output, shape)
9504	if err != nil {
9505		var snapshot bytes.Buffer
9506		io.Copy(&snapshot, ringBuffer)
9507		err = &smithy.DeserializationError{
9508			Err:      fmt.Errorf("failed to decode response body, %w", err),
9509			Snapshot: snapshot.Bytes(),
9510		}
9511		return out, metadata, err
9512	}
9513
9514	return out, metadata, err
9515}
9516
9517func awsAwsjson11_deserializeOpErrorUpdateConferenceProvider(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9518	var errorBuffer bytes.Buffer
9519	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9520		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9521	}
9522	errorBody := bytes.NewReader(errorBuffer.Bytes())
9523
9524	errorCode := "UnknownError"
9525	errorMessage := errorCode
9526
9527	code := response.Header.Get("X-Amzn-ErrorType")
9528	if len(code) != 0 {
9529		errorCode = restjson.SanitizeErrorCode(code)
9530	}
9531
9532	var buff [1024]byte
9533	ringBuffer := smithyio.NewRingBuffer(buff[:])
9534
9535	body := io.TeeReader(errorBody, ringBuffer)
9536	decoder := json.NewDecoder(body)
9537	decoder.UseNumber()
9538	code, message, err := restjson.GetErrorInfo(decoder)
9539	if err != nil {
9540		var snapshot bytes.Buffer
9541		io.Copy(&snapshot, ringBuffer)
9542		err = &smithy.DeserializationError{
9543			Err:      fmt.Errorf("failed to decode response body, %w", err),
9544			Snapshot: snapshot.Bytes(),
9545		}
9546		return err
9547	}
9548
9549	errorBody.Seek(0, io.SeekStart)
9550	if len(code) != 0 {
9551		errorCode = restjson.SanitizeErrorCode(code)
9552	}
9553	if len(message) != 0 {
9554		errorMessage = message
9555	}
9556
9557	switch {
9558	case strings.EqualFold("NotFoundException", errorCode):
9559		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9560
9561	default:
9562		genericError := &smithy.GenericAPIError{
9563			Code:    errorCode,
9564			Message: errorMessage,
9565		}
9566		return genericError
9567
9568	}
9569}
9570
9571type awsAwsjson11_deserializeOpUpdateContact struct {
9572}
9573
9574func (*awsAwsjson11_deserializeOpUpdateContact) ID() string {
9575	return "OperationDeserializer"
9576}
9577
9578func (m *awsAwsjson11_deserializeOpUpdateContact) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9579	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9580) {
9581	out, metadata, err = next.HandleDeserialize(ctx, in)
9582	if err != nil {
9583		return out, metadata, err
9584	}
9585
9586	response, ok := out.RawResponse.(*smithyhttp.Response)
9587	if !ok {
9588		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9589	}
9590
9591	if response.StatusCode < 200 || response.StatusCode >= 300 {
9592		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateContact(response, &metadata)
9593	}
9594	output := &UpdateContactOutput{}
9595	out.Result = output
9596
9597	var buff [1024]byte
9598	ringBuffer := smithyio.NewRingBuffer(buff[:])
9599
9600	body := io.TeeReader(response.Body, ringBuffer)
9601	decoder := json.NewDecoder(body)
9602	decoder.UseNumber()
9603	var shape interface{}
9604	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9605		var snapshot bytes.Buffer
9606		io.Copy(&snapshot, ringBuffer)
9607		err = &smithy.DeserializationError{
9608			Err:      fmt.Errorf("failed to decode response body, %w", err),
9609			Snapshot: snapshot.Bytes(),
9610		}
9611		return out, metadata, err
9612	}
9613
9614	err = awsAwsjson11_deserializeOpDocumentUpdateContactOutput(&output, shape)
9615	if err != nil {
9616		var snapshot bytes.Buffer
9617		io.Copy(&snapshot, ringBuffer)
9618		err = &smithy.DeserializationError{
9619			Err:      fmt.Errorf("failed to decode response body, %w", err),
9620			Snapshot: snapshot.Bytes(),
9621		}
9622		return out, metadata, err
9623	}
9624
9625	return out, metadata, err
9626}
9627
9628func awsAwsjson11_deserializeOpErrorUpdateContact(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9629	var errorBuffer bytes.Buffer
9630	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9631		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9632	}
9633	errorBody := bytes.NewReader(errorBuffer.Bytes())
9634
9635	errorCode := "UnknownError"
9636	errorMessage := errorCode
9637
9638	code := response.Header.Get("X-Amzn-ErrorType")
9639	if len(code) != 0 {
9640		errorCode = restjson.SanitizeErrorCode(code)
9641	}
9642
9643	var buff [1024]byte
9644	ringBuffer := smithyio.NewRingBuffer(buff[:])
9645
9646	body := io.TeeReader(errorBody, ringBuffer)
9647	decoder := json.NewDecoder(body)
9648	decoder.UseNumber()
9649	code, message, err := restjson.GetErrorInfo(decoder)
9650	if err != nil {
9651		var snapshot bytes.Buffer
9652		io.Copy(&snapshot, ringBuffer)
9653		err = &smithy.DeserializationError{
9654			Err:      fmt.Errorf("failed to decode response body, %w", err),
9655			Snapshot: snapshot.Bytes(),
9656		}
9657		return err
9658	}
9659
9660	errorBody.Seek(0, io.SeekStart)
9661	if len(code) != 0 {
9662		errorCode = restjson.SanitizeErrorCode(code)
9663	}
9664	if len(message) != 0 {
9665		errorMessage = message
9666	}
9667
9668	switch {
9669	case strings.EqualFold("ConcurrentModificationException", errorCode):
9670		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
9671
9672	case strings.EqualFold("NotFoundException", errorCode):
9673		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9674
9675	default:
9676		genericError := &smithy.GenericAPIError{
9677			Code:    errorCode,
9678			Message: errorMessage,
9679		}
9680		return genericError
9681
9682	}
9683}
9684
9685type awsAwsjson11_deserializeOpUpdateDevice struct {
9686}
9687
9688func (*awsAwsjson11_deserializeOpUpdateDevice) ID() string {
9689	return "OperationDeserializer"
9690}
9691
9692func (m *awsAwsjson11_deserializeOpUpdateDevice) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9693	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9694) {
9695	out, metadata, err = next.HandleDeserialize(ctx, in)
9696	if err != nil {
9697		return out, metadata, err
9698	}
9699
9700	response, ok := out.RawResponse.(*smithyhttp.Response)
9701	if !ok {
9702		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9703	}
9704
9705	if response.StatusCode < 200 || response.StatusCode >= 300 {
9706		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateDevice(response, &metadata)
9707	}
9708	output := &UpdateDeviceOutput{}
9709	out.Result = output
9710
9711	var buff [1024]byte
9712	ringBuffer := smithyio.NewRingBuffer(buff[:])
9713
9714	body := io.TeeReader(response.Body, ringBuffer)
9715	decoder := json.NewDecoder(body)
9716	decoder.UseNumber()
9717	var shape interface{}
9718	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9719		var snapshot bytes.Buffer
9720		io.Copy(&snapshot, ringBuffer)
9721		err = &smithy.DeserializationError{
9722			Err:      fmt.Errorf("failed to decode response body, %w", err),
9723			Snapshot: snapshot.Bytes(),
9724		}
9725		return out, metadata, err
9726	}
9727
9728	err = awsAwsjson11_deserializeOpDocumentUpdateDeviceOutput(&output, shape)
9729	if err != nil {
9730		var snapshot bytes.Buffer
9731		io.Copy(&snapshot, ringBuffer)
9732		err = &smithy.DeserializationError{
9733			Err:      fmt.Errorf("failed to decode response body, %w", err),
9734			Snapshot: snapshot.Bytes(),
9735		}
9736		return out, metadata, err
9737	}
9738
9739	return out, metadata, err
9740}
9741
9742func awsAwsjson11_deserializeOpErrorUpdateDevice(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9743	var errorBuffer bytes.Buffer
9744	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9745		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9746	}
9747	errorBody := bytes.NewReader(errorBuffer.Bytes())
9748
9749	errorCode := "UnknownError"
9750	errorMessage := errorCode
9751
9752	code := response.Header.Get("X-Amzn-ErrorType")
9753	if len(code) != 0 {
9754		errorCode = restjson.SanitizeErrorCode(code)
9755	}
9756
9757	var buff [1024]byte
9758	ringBuffer := smithyio.NewRingBuffer(buff[:])
9759
9760	body := io.TeeReader(errorBody, ringBuffer)
9761	decoder := json.NewDecoder(body)
9762	decoder.UseNumber()
9763	code, message, err := restjson.GetErrorInfo(decoder)
9764	if err != nil {
9765		var snapshot bytes.Buffer
9766		io.Copy(&snapshot, ringBuffer)
9767		err = &smithy.DeserializationError{
9768			Err:      fmt.Errorf("failed to decode response body, %w", err),
9769			Snapshot: snapshot.Bytes(),
9770		}
9771		return err
9772	}
9773
9774	errorBody.Seek(0, io.SeekStart)
9775	if len(code) != 0 {
9776		errorCode = restjson.SanitizeErrorCode(code)
9777	}
9778	if len(message) != 0 {
9779		errorMessage = message
9780	}
9781
9782	switch {
9783	case strings.EqualFold("ConcurrentModificationException", errorCode):
9784		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
9785
9786	case strings.EqualFold("DeviceNotRegisteredException", errorCode):
9787		return awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response, errorBody)
9788
9789	case strings.EqualFold("NotFoundException", errorCode):
9790		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9791
9792	default:
9793		genericError := &smithy.GenericAPIError{
9794			Code:    errorCode,
9795			Message: errorMessage,
9796		}
9797		return genericError
9798
9799	}
9800}
9801
9802type awsAwsjson11_deserializeOpUpdateGateway struct {
9803}
9804
9805func (*awsAwsjson11_deserializeOpUpdateGateway) ID() string {
9806	return "OperationDeserializer"
9807}
9808
9809func (m *awsAwsjson11_deserializeOpUpdateGateway) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9810	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9811) {
9812	out, metadata, err = next.HandleDeserialize(ctx, in)
9813	if err != nil {
9814		return out, metadata, err
9815	}
9816
9817	response, ok := out.RawResponse.(*smithyhttp.Response)
9818	if !ok {
9819		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9820	}
9821
9822	if response.StatusCode < 200 || response.StatusCode >= 300 {
9823		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateGateway(response, &metadata)
9824	}
9825	output := &UpdateGatewayOutput{}
9826	out.Result = output
9827
9828	var buff [1024]byte
9829	ringBuffer := smithyio.NewRingBuffer(buff[:])
9830
9831	body := io.TeeReader(response.Body, ringBuffer)
9832	decoder := json.NewDecoder(body)
9833	decoder.UseNumber()
9834	var shape interface{}
9835	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9836		var snapshot bytes.Buffer
9837		io.Copy(&snapshot, ringBuffer)
9838		err = &smithy.DeserializationError{
9839			Err:      fmt.Errorf("failed to decode response body, %w", err),
9840			Snapshot: snapshot.Bytes(),
9841		}
9842		return out, metadata, err
9843	}
9844
9845	err = awsAwsjson11_deserializeOpDocumentUpdateGatewayOutput(&output, shape)
9846	if err != nil {
9847		var snapshot bytes.Buffer
9848		io.Copy(&snapshot, ringBuffer)
9849		err = &smithy.DeserializationError{
9850			Err:      fmt.Errorf("failed to decode response body, %w", err),
9851			Snapshot: snapshot.Bytes(),
9852		}
9853		return out, metadata, err
9854	}
9855
9856	return out, metadata, err
9857}
9858
9859func awsAwsjson11_deserializeOpErrorUpdateGateway(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9860	var errorBuffer bytes.Buffer
9861	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9862		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9863	}
9864	errorBody := bytes.NewReader(errorBuffer.Bytes())
9865
9866	errorCode := "UnknownError"
9867	errorMessage := errorCode
9868
9869	code := response.Header.Get("X-Amzn-ErrorType")
9870	if len(code) != 0 {
9871		errorCode = restjson.SanitizeErrorCode(code)
9872	}
9873
9874	var buff [1024]byte
9875	ringBuffer := smithyio.NewRingBuffer(buff[:])
9876
9877	body := io.TeeReader(errorBody, ringBuffer)
9878	decoder := json.NewDecoder(body)
9879	decoder.UseNumber()
9880	code, message, err := restjson.GetErrorInfo(decoder)
9881	if err != nil {
9882		var snapshot bytes.Buffer
9883		io.Copy(&snapshot, ringBuffer)
9884		err = &smithy.DeserializationError{
9885			Err:      fmt.Errorf("failed to decode response body, %w", err),
9886			Snapshot: snapshot.Bytes(),
9887		}
9888		return err
9889	}
9890
9891	errorBody.Seek(0, io.SeekStart)
9892	if len(code) != 0 {
9893		errorCode = restjson.SanitizeErrorCode(code)
9894	}
9895	if len(message) != 0 {
9896		errorMessage = message
9897	}
9898
9899	switch {
9900	case strings.EqualFold("NameInUseException", errorCode):
9901		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
9902
9903	case strings.EqualFold("NotFoundException", errorCode):
9904		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
9905
9906	default:
9907		genericError := &smithy.GenericAPIError{
9908			Code:    errorCode,
9909			Message: errorMessage,
9910		}
9911		return genericError
9912
9913	}
9914}
9915
9916type awsAwsjson11_deserializeOpUpdateGatewayGroup struct {
9917}
9918
9919func (*awsAwsjson11_deserializeOpUpdateGatewayGroup) ID() string {
9920	return "OperationDeserializer"
9921}
9922
9923func (m *awsAwsjson11_deserializeOpUpdateGatewayGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
9924	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
9925) {
9926	out, metadata, err = next.HandleDeserialize(ctx, in)
9927	if err != nil {
9928		return out, metadata, err
9929	}
9930
9931	response, ok := out.RawResponse.(*smithyhttp.Response)
9932	if !ok {
9933		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
9934	}
9935
9936	if response.StatusCode < 200 || response.StatusCode >= 300 {
9937		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateGatewayGroup(response, &metadata)
9938	}
9939	output := &UpdateGatewayGroupOutput{}
9940	out.Result = output
9941
9942	var buff [1024]byte
9943	ringBuffer := smithyio.NewRingBuffer(buff[:])
9944
9945	body := io.TeeReader(response.Body, ringBuffer)
9946	decoder := json.NewDecoder(body)
9947	decoder.UseNumber()
9948	var shape interface{}
9949	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
9950		var snapshot bytes.Buffer
9951		io.Copy(&snapshot, ringBuffer)
9952		err = &smithy.DeserializationError{
9953			Err:      fmt.Errorf("failed to decode response body, %w", err),
9954			Snapshot: snapshot.Bytes(),
9955		}
9956		return out, metadata, err
9957	}
9958
9959	err = awsAwsjson11_deserializeOpDocumentUpdateGatewayGroupOutput(&output, shape)
9960	if err != nil {
9961		var snapshot bytes.Buffer
9962		io.Copy(&snapshot, ringBuffer)
9963		err = &smithy.DeserializationError{
9964			Err:      fmt.Errorf("failed to decode response body, %w", err),
9965			Snapshot: snapshot.Bytes(),
9966		}
9967		return out, metadata, err
9968	}
9969
9970	return out, metadata, err
9971}
9972
9973func awsAwsjson11_deserializeOpErrorUpdateGatewayGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
9974	var errorBuffer bytes.Buffer
9975	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
9976		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
9977	}
9978	errorBody := bytes.NewReader(errorBuffer.Bytes())
9979
9980	errorCode := "UnknownError"
9981	errorMessage := errorCode
9982
9983	code := response.Header.Get("X-Amzn-ErrorType")
9984	if len(code) != 0 {
9985		errorCode = restjson.SanitizeErrorCode(code)
9986	}
9987
9988	var buff [1024]byte
9989	ringBuffer := smithyio.NewRingBuffer(buff[:])
9990
9991	body := io.TeeReader(errorBody, ringBuffer)
9992	decoder := json.NewDecoder(body)
9993	decoder.UseNumber()
9994	code, message, err := restjson.GetErrorInfo(decoder)
9995	if err != nil {
9996		var snapshot bytes.Buffer
9997		io.Copy(&snapshot, ringBuffer)
9998		err = &smithy.DeserializationError{
9999			Err:      fmt.Errorf("failed to decode response body, %w", err),
10000			Snapshot: snapshot.Bytes(),
10001		}
10002		return err
10003	}
10004
10005	errorBody.Seek(0, io.SeekStart)
10006	if len(code) != 0 {
10007		errorCode = restjson.SanitizeErrorCode(code)
10008	}
10009	if len(message) != 0 {
10010		errorMessage = message
10011	}
10012
10013	switch {
10014	case strings.EqualFold("NameInUseException", errorCode):
10015		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
10016
10017	case strings.EqualFold("NotFoundException", errorCode):
10018		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
10019
10020	default:
10021		genericError := &smithy.GenericAPIError{
10022			Code:    errorCode,
10023			Message: errorMessage,
10024		}
10025		return genericError
10026
10027	}
10028}
10029
10030type awsAwsjson11_deserializeOpUpdateNetworkProfile struct {
10031}
10032
10033func (*awsAwsjson11_deserializeOpUpdateNetworkProfile) ID() string {
10034	return "OperationDeserializer"
10035}
10036
10037func (m *awsAwsjson11_deserializeOpUpdateNetworkProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
10038	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
10039) {
10040	out, metadata, err = next.HandleDeserialize(ctx, in)
10041	if err != nil {
10042		return out, metadata, err
10043	}
10044
10045	response, ok := out.RawResponse.(*smithyhttp.Response)
10046	if !ok {
10047		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
10048	}
10049
10050	if response.StatusCode < 200 || response.StatusCode >= 300 {
10051		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateNetworkProfile(response, &metadata)
10052	}
10053	output := &UpdateNetworkProfileOutput{}
10054	out.Result = output
10055
10056	var buff [1024]byte
10057	ringBuffer := smithyio.NewRingBuffer(buff[:])
10058
10059	body := io.TeeReader(response.Body, ringBuffer)
10060	decoder := json.NewDecoder(body)
10061	decoder.UseNumber()
10062	var shape interface{}
10063	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10064		var snapshot bytes.Buffer
10065		io.Copy(&snapshot, ringBuffer)
10066		err = &smithy.DeserializationError{
10067			Err:      fmt.Errorf("failed to decode response body, %w", err),
10068			Snapshot: snapshot.Bytes(),
10069		}
10070		return out, metadata, err
10071	}
10072
10073	err = awsAwsjson11_deserializeOpDocumentUpdateNetworkProfileOutput(&output, shape)
10074	if err != nil {
10075		var snapshot bytes.Buffer
10076		io.Copy(&snapshot, ringBuffer)
10077		err = &smithy.DeserializationError{
10078			Err:      fmt.Errorf("failed to decode response body, %w", err),
10079			Snapshot: snapshot.Bytes(),
10080		}
10081		return out, metadata, err
10082	}
10083
10084	return out, metadata, err
10085}
10086
10087func awsAwsjson11_deserializeOpErrorUpdateNetworkProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
10088	var errorBuffer bytes.Buffer
10089	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
10090		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
10091	}
10092	errorBody := bytes.NewReader(errorBuffer.Bytes())
10093
10094	errorCode := "UnknownError"
10095	errorMessage := errorCode
10096
10097	code := response.Header.Get("X-Amzn-ErrorType")
10098	if len(code) != 0 {
10099		errorCode = restjson.SanitizeErrorCode(code)
10100	}
10101
10102	var buff [1024]byte
10103	ringBuffer := smithyio.NewRingBuffer(buff[:])
10104
10105	body := io.TeeReader(errorBody, ringBuffer)
10106	decoder := json.NewDecoder(body)
10107	decoder.UseNumber()
10108	code, message, err := restjson.GetErrorInfo(decoder)
10109	if err != nil {
10110		var snapshot bytes.Buffer
10111		io.Copy(&snapshot, ringBuffer)
10112		err = &smithy.DeserializationError{
10113			Err:      fmt.Errorf("failed to decode response body, %w", err),
10114			Snapshot: snapshot.Bytes(),
10115		}
10116		return err
10117	}
10118
10119	errorBody.Seek(0, io.SeekStart)
10120	if len(code) != 0 {
10121		errorCode = restjson.SanitizeErrorCode(code)
10122	}
10123	if len(message) != 0 {
10124		errorMessage = message
10125	}
10126
10127	switch {
10128	case strings.EqualFold("ConcurrentModificationException", errorCode):
10129		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
10130
10131	case strings.EqualFold("InvalidCertificateAuthorityException", errorCode):
10132		return awsAwsjson11_deserializeErrorInvalidCertificateAuthorityException(response, errorBody)
10133
10134	case strings.EqualFold("InvalidSecretsManagerResourceException", errorCode):
10135		return awsAwsjson11_deserializeErrorInvalidSecretsManagerResourceException(response, errorBody)
10136
10137	case strings.EqualFold("NameInUseException", errorCode):
10138		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
10139
10140	case strings.EqualFold("NotFoundException", errorCode):
10141		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
10142
10143	default:
10144		genericError := &smithy.GenericAPIError{
10145			Code:    errorCode,
10146			Message: errorMessage,
10147		}
10148		return genericError
10149
10150	}
10151}
10152
10153type awsAwsjson11_deserializeOpUpdateProfile struct {
10154}
10155
10156func (*awsAwsjson11_deserializeOpUpdateProfile) ID() string {
10157	return "OperationDeserializer"
10158}
10159
10160func (m *awsAwsjson11_deserializeOpUpdateProfile) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
10161	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
10162) {
10163	out, metadata, err = next.HandleDeserialize(ctx, in)
10164	if err != nil {
10165		return out, metadata, err
10166	}
10167
10168	response, ok := out.RawResponse.(*smithyhttp.Response)
10169	if !ok {
10170		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
10171	}
10172
10173	if response.StatusCode < 200 || response.StatusCode >= 300 {
10174		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateProfile(response, &metadata)
10175	}
10176	output := &UpdateProfileOutput{}
10177	out.Result = output
10178
10179	var buff [1024]byte
10180	ringBuffer := smithyio.NewRingBuffer(buff[:])
10181
10182	body := io.TeeReader(response.Body, ringBuffer)
10183	decoder := json.NewDecoder(body)
10184	decoder.UseNumber()
10185	var shape interface{}
10186	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10187		var snapshot bytes.Buffer
10188		io.Copy(&snapshot, ringBuffer)
10189		err = &smithy.DeserializationError{
10190			Err:      fmt.Errorf("failed to decode response body, %w", err),
10191			Snapshot: snapshot.Bytes(),
10192		}
10193		return out, metadata, err
10194	}
10195
10196	err = awsAwsjson11_deserializeOpDocumentUpdateProfileOutput(&output, shape)
10197	if err != nil {
10198		var snapshot bytes.Buffer
10199		io.Copy(&snapshot, ringBuffer)
10200		err = &smithy.DeserializationError{
10201			Err:      fmt.Errorf("failed to decode response body, %w", err),
10202			Snapshot: snapshot.Bytes(),
10203		}
10204		return out, metadata, err
10205	}
10206
10207	return out, metadata, err
10208}
10209
10210func awsAwsjson11_deserializeOpErrorUpdateProfile(response *smithyhttp.Response, metadata *middleware.Metadata) error {
10211	var errorBuffer bytes.Buffer
10212	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
10213		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
10214	}
10215	errorBody := bytes.NewReader(errorBuffer.Bytes())
10216
10217	errorCode := "UnknownError"
10218	errorMessage := errorCode
10219
10220	code := response.Header.Get("X-Amzn-ErrorType")
10221	if len(code) != 0 {
10222		errorCode = restjson.SanitizeErrorCode(code)
10223	}
10224
10225	var buff [1024]byte
10226	ringBuffer := smithyio.NewRingBuffer(buff[:])
10227
10228	body := io.TeeReader(errorBody, ringBuffer)
10229	decoder := json.NewDecoder(body)
10230	decoder.UseNumber()
10231	code, message, err := restjson.GetErrorInfo(decoder)
10232	if err != nil {
10233		var snapshot bytes.Buffer
10234		io.Copy(&snapshot, ringBuffer)
10235		err = &smithy.DeserializationError{
10236			Err:      fmt.Errorf("failed to decode response body, %w", err),
10237			Snapshot: snapshot.Bytes(),
10238		}
10239		return err
10240	}
10241
10242	errorBody.Seek(0, io.SeekStart)
10243	if len(code) != 0 {
10244		errorCode = restjson.SanitizeErrorCode(code)
10245	}
10246	if len(message) != 0 {
10247		errorMessage = message
10248	}
10249
10250	switch {
10251	case strings.EqualFold("ConcurrentModificationException", errorCode):
10252		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
10253
10254	case strings.EqualFold("NameInUseException", errorCode):
10255		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
10256
10257	case strings.EqualFold("NotFoundException", errorCode):
10258		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
10259
10260	default:
10261		genericError := &smithy.GenericAPIError{
10262			Code:    errorCode,
10263			Message: errorMessage,
10264		}
10265		return genericError
10266
10267	}
10268}
10269
10270type awsAwsjson11_deserializeOpUpdateRoom struct {
10271}
10272
10273func (*awsAwsjson11_deserializeOpUpdateRoom) ID() string {
10274	return "OperationDeserializer"
10275}
10276
10277func (m *awsAwsjson11_deserializeOpUpdateRoom) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
10278	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
10279) {
10280	out, metadata, err = next.HandleDeserialize(ctx, in)
10281	if err != nil {
10282		return out, metadata, err
10283	}
10284
10285	response, ok := out.RawResponse.(*smithyhttp.Response)
10286	if !ok {
10287		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
10288	}
10289
10290	if response.StatusCode < 200 || response.StatusCode >= 300 {
10291		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateRoom(response, &metadata)
10292	}
10293	output := &UpdateRoomOutput{}
10294	out.Result = output
10295
10296	var buff [1024]byte
10297	ringBuffer := smithyio.NewRingBuffer(buff[:])
10298
10299	body := io.TeeReader(response.Body, ringBuffer)
10300	decoder := json.NewDecoder(body)
10301	decoder.UseNumber()
10302	var shape interface{}
10303	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10304		var snapshot bytes.Buffer
10305		io.Copy(&snapshot, ringBuffer)
10306		err = &smithy.DeserializationError{
10307			Err:      fmt.Errorf("failed to decode response body, %w", err),
10308			Snapshot: snapshot.Bytes(),
10309		}
10310		return out, metadata, err
10311	}
10312
10313	err = awsAwsjson11_deserializeOpDocumentUpdateRoomOutput(&output, shape)
10314	if err != nil {
10315		var snapshot bytes.Buffer
10316		io.Copy(&snapshot, ringBuffer)
10317		err = &smithy.DeserializationError{
10318			Err:      fmt.Errorf("failed to decode response body, %w", err),
10319			Snapshot: snapshot.Bytes(),
10320		}
10321		return out, metadata, err
10322	}
10323
10324	return out, metadata, err
10325}
10326
10327func awsAwsjson11_deserializeOpErrorUpdateRoom(response *smithyhttp.Response, metadata *middleware.Metadata) error {
10328	var errorBuffer bytes.Buffer
10329	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
10330		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
10331	}
10332	errorBody := bytes.NewReader(errorBuffer.Bytes())
10333
10334	errorCode := "UnknownError"
10335	errorMessage := errorCode
10336
10337	code := response.Header.Get("X-Amzn-ErrorType")
10338	if len(code) != 0 {
10339		errorCode = restjson.SanitizeErrorCode(code)
10340	}
10341
10342	var buff [1024]byte
10343	ringBuffer := smithyio.NewRingBuffer(buff[:])
10344
10345	body := io.TeeReader(errorBody, ringBuffer)
10346	decoder := json.NewDecoder(body)
10347	decoder.UseNumber()
10348	code, message, err := restjson.GetErrorInfo(decoder)
10349	if err != nil {
10350		var snapshot bytes.Buffer
10351		io.Copy(&snapshot, ringBuffer)
10352		err = &smithy.DeserializationError{
10353			Err:      fmt.Errorf("failed to decode response body, %w", err),
10354			Snapshot: snapshot.Bytes(),
10355		}
10356		return err
10357	}
10358
10359	errorBody.Seek(0, io.SeekStart)
10360	if len(code) != 0 {
10361		errorCode = restjson.SanitizeErrorCode(code)
10362	}
10363	if len(message) != 0 {
10364		errorMessage = message
10365	}
10366
10367	switch {
10368	case strings.EqualFold("NameInUseException", errorCode):
10369		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
10370
10371	case strings.EqualFold("NotFoundException", errorCode):
10372		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
10373
10374	default:
10375		genericError := &smithy.GenericAPIError{
10376			Code:    errorCode,
10377			Message: errorMessage,
10378		}
10379		return genericError
10380
10381	}
10382}
10383
10384type awsAwsjson11_deserializeOpUpdateSkillGroup struct {
10385}
10386
10387func (*awsAwsjson11_deserializeOpUpdateSkillGroup) ID() string {
10388	return "OperationDeserializer"
10389}
10390
10391func (m *awsAwsjson11_deserializeOpUpdateSkillGroup) HandleDeserialize(ctx context.Context, in middleware.DeserializeInput, next middleware.DeserializeHandler) (
10392	out middleware.DeserializeOutput, metadata middleware.Metadata, err error,
10393) {
10394	out, metadata, err = next.HandleDeserialize(ctx, in)
10395	if err != nil {
10396		return out, metadata, err
10397	}
10398
10399	response, ok := out.RawResponse.(*smithyhttp.Response)
10400	if !ok {
10401		return out, metadata, &smithy.DeserializationError{Err: fmt.Errorf("unknown transport type %T", out.RawResponse)}
10402	}
10403
10404	if response.StatusCode < 200 || response.StatusCode >= 300 {
10405		return out, metadata, awsAwsjson11_deserializeOpErrorUpdateSkillGroup(response, &metadata)
10406	}
10407	output := &UpdateSkillGroupOutput{}
10408	out.Result = output
10409
10410	var buff [1024]byte
10411	ringBuffer := smithyio.NewRingBuffer(buff[:])
10412
10413	body := io.TeeReader(response.Body, ringBuffer)
10414	decoder := json.NewDecoder(body)
10415	decoder.UseNumber()
10416	var shape interface{}
10417	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10418		var snapshot bytes.Buffer
10419		io.Copy(&snapshot, ringBuffer)
10420		err = &smithy.DeserializationError{
10421			Err:      fmt.Errorf("failed to decode response body, %w", err),
10422			Snapshot: snapshot.Bytes(),
10423		}
10424		return out, metadata, err
10425	}
10426
10427	err = awsAwsjson11_deserializeOpDocumentUpdateSkillGroupOutput(&output, shape)
10428	if err != nil {
10429		var snapshot bytes.Buffer
10430		io.Copy(&snapshot, ringBuffer)
10431		err = &smithy.DeserializationError{
10432			Err:      fmt.Errorf("failed to decode response body, %w", err),
10433			Snapshot: snapshot.Bytes(),
10434		}
10435		return out, metadata, err
10436	}
10437
10438	return out, metadata, err
10439}
10440
10441func awsAwsjson11_deserializeOpErrorUpdateSkillGroup(response *smithyhttp.Response, metadata *middleware.Metadata) error {
10442	var errorBuffer bytes.Buffer
10443	if _, err := io.Copy(&errorBuffer, response.Body); err != nil {
10444		return &smithy.DeserializationError{Err: fmt.Errorf("failed to copy error response body, %w", err)}
10445	}
10446	errorBody := bytes.NewReader(errorBuffer.Bytes())
10447
10448	errorCode := "UnknownError"
10449	errorMessage := errorCode
10450
10451	code := response.Header.Get("X-Amzn-ErrorType")
10452	if len(code) != 0 {
10453		errorCode = restjson.SanitizeErrorCode(code)
10454	}
10455
10456	var buff [1024]byte
10457	ringBuffer := smithyio.NewRingBuffer(buff[:])
10458
10459	body := io.TeeReader(errorBody, ringBuffer)
10460	decoder := json.NewDecoder(body)
10461	decoder.UseNumber()
10462	code, message, err := restjson.GetErrorInfo(decoder)
10463	if err != nil {
10464		var snapshot bytes.Buffer
10465		io.Copy(&snapshot, ringBuffer)
10466		err = &smithy.DeserializationError{
10467			Err:      fmt.Errorf("failed to decode response body, %w", err),
10468			Snapshot: snapshot.Bytes(),
10469		}
10470		return err
10471	}
10472
10473	errorBody.Seek(0, io.SeekStart)
10474	if len(code) != 0 {
10475		errorCode = restjson.SanitizeErrorCode(code)
10476	}
10477	if len(message) != 0 {
10478		errorMessage = message
10479	}
10480
10481	switch {
10482	case strings.EqualFold("ConcurrentModificationException", errorCode):
10483		return awsAwsjson11_deserializeErrorConcurrentModificationException(response, errorBody)
10484
10485	case strings.EqualFold("NameInUseException", errorCode):
10486		return awsAwsjson11_deserializeErrorNameInUseException(response, errorBody)
10487
10488	case strings.EqualFold("NotFoundException", errorCode):
10489		return awsAwsjson11_deserializeErrorNotFoundException(response, errorBody)
10490
10491	default:
10492		genericError := &smithy.GenericAPIError{
10493			Code:    errorCode,
10494			Message: errorMessage,
10495		}
10496		return genericError
10497
10498	}
10499}
10500
10501func awsAwsjson11_deserializeErrorAlreadyExistsException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10502	var buff [1024]byte
10503	ringBuffer := smithyio.NewRingBuffer(buff[:])
10504
10505	body := io.TeeReader(errorBody, ringBuffer)
10506	decoder := json.NewDecoder(body)
10507	decoder.UseNumber()
10508	var shape interface{}
10509	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10510		var snapshot bytes.Buffer
10511		io.Copy(&snapshot, ringBuffer)
10512		err = &smithy.DeserializationError{
10513			Err:      fmt.Errorf("failed to decode response body, %w", err),
10514			Snapshot: snapshot.Bytes(),
10515		}
10516		return err
10517	}
10518
10519	output := &types.AlreadyExistsException{}
10520	err := awsAwsjson11_deserializeDocumentAlreadyExistsException(&output, shape)
10521
10522	if err != nil {
10523		var snapshot bytes.Buffer
10524		io.Copy(&snapshot, ringBuffer)
10525		err = &smithy.DeserializationError{
10526			Err:      fmt.Errorf("failed to decode response body, %w", err),
10527			Snapshot: snapshot.Bytes(),
10528		}
10529		return err
10530	}
10531
10532	errorBody.Seek(0, io.SeekStart)
10533	return output
10534}
10535
10536func awsAwsjson11_deserializeErrorConcurrentModificationException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10537	var buff [1024]byte
10538	ringBuffer := smithyio.NewRingBuffer(buff[:])
10539
10540	body := io.TeeReader(errorBody, ringBuffer)
10541	decoder := json.NewDecoder(body)
10542	decoder.UseNumber()
10543	var shape interface{}
10544	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10545		var snapshot bytes.Buffer
10546		io.Copy(&snapshot, ringBuffer)
10547		err = &smithy.DeserializationError{
10548			Err:      fmt.Errorf("failed to decode response body, %w", err),
10549			Snapshot: snapshot.Bytes(),
10550		}
10551		return err
10552	}
10553
10554	output := &types.ConcurrentModificationException{}
10555	err := awsAwsjson11_deserializeDocumentConcurrentModificationException(&output, shape)
10556
10557	if err != nil {
10558		var snapshot bytes.Buffer
10559		io.Copy(&snapshot, ringBuffer)
10560		err = &smithy.DeserializationError{
10561			Err:      fmt.Errorf("failed to decode response body, %w", err),
10562			Snapshot: snapshot.Bytes(),
10563		}
10564		return err
10565	}
10566
10567	errorBody.Seek(0, io.SeekStart)
10568	return output
10569}
10570
10571func awsAwsjson11_deserializeErrorDeviceNotRegisteredException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10572	var buff [1024]byte
10573	ringBuffer := smithyio.NewRingBuffer(buff[:])
10574
10575	body := io.TeeReader(errorBody, ringBuffer)
10576	decoder := json.NewDecoder(body)
10577	decoder.UseNumber()
10578	var shape interface{}
10579	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10580		var snapshot bytes.Buffer
10581		io.Copy(&snapshot, ringBuffer)
10582		err = &smithy.DeserializationError{
10583			Err:      fmt.Errorf("failed to decode response body, %w", err),
10584			Snapshot: snapshot.Bytes(),
10585		}
10586		return err
10587	}
10588
10589	output := &types.DeviceNotRegisteredException{}
10590	err := awsAwsjson11_deserializeDocumentDeviceNotRegisteredException(&output, shape)
10591
10592	if err != nil {
10593		var snapshot bytes.Buffer
10594		io.Copy(&snapshot, ringBuffer)
10595		err = &smithy.DeserializationError{
10596			Err:      fmt.Errorf("failed to decode response body, %w", err),
10597			Snapshot: snapshot.Bytes(),
10598		}
10599		return err
10600	}
10601
10602	errorBody.Seek(0, io.SeekStart)
10603	return output
10604}
10605
10606func awsAwsjson11_deserializeErrorInvalidCertificateAuthorityException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10607	var buff [1024]byte
10608	ringBuffer := smithyio.NewRingBuffer(buff[:])
10609
10610	body := io.TeeReader(errorBody, ringBuffer)
10611	decoder := json.NewDecoder(body)
10612	decoder.UseNumber()
10613	var shape interface{}
10614	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10615		var snapshot bytes.Buffer
10616		io.Copy(&snapshot, ringBuffer)
10617		err = &smithy.DeserializationError{
10618			Err:      fmt.Errorf("failed to decode response body, %w", err),
10619			Snapshot: snapshot.Bytes(),
10620		}
10621		return err
10622	}
10623
10624	output := &types.InvalidCertificateAuthorityException{}
10625	err := awsAwsjson11_deserializeDocumentInvalidCertificateAuthorityException(&output, shape)
10626
10627	if err != nil {
10628		var snapshot bytes.Buffer
10629		io.Copy(&snapshot, ringBuffer)
10630		err = &smithy.DeserializationError{
10631			Err:      fmt.Errorf("failed to decode response body, %w", err),
10632			Snapshot: snapshot.Bytes(),
10633		}
10634		return err
10635	}
10636
10637	errorBody.Seek(0, io.SeekStart)
10638	return output
10639}
10640
10641func awsAwsjson11_deserializeErrorInvalidDeviceException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10642	var buff [1024]byte
10643	ringBuffer := smithyio.NewRingBuffer(buff[:])
10644
10645	body := io.TeeReader(errorBody, ringBuffer)
10646	decoder := json.NewDecoder(body)
10647	decoder.UseNumber()
10648	var shape interface{}
10649	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10650		var snapshot bytes.Buffer
10651		io.Copy(&snapshot, ringBuffer)
10652		err = &smithy.DeserializationError{
10653			Err:      fmt.Errorf("failed to decode response body, %w", err),
10654			Snapshot: snapshot.Bytes(),
10655		}
10656		return err
10657	}
10658
10659	output := &types.InvalidDeviceException{}
10660	err := awsAwsjson11_deserializeDocumentInvalidDeviceException(&output, shape)
10661
10662	if err != nil {
10663		var snapshot bytes.Buffer
10664		io.Copy(&snapshot, ringBuffer)
10665		err = &smithy.DeserializationError{
10666			Err:      fmt.Errorf("failed to decode response body, %w", err),
10667			Snapshot: snapshot.Bytes(),
10668		}
10669		return err
10670	}
10671
10672	errorBody.Seek(0, io.SeekStart)
10673	return output
10674}
10675
10676func awsAwsjson11_deserializeErrorInvalidSecretsManagerResourceException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10677	var buff [1024]byte
10678	ringBuffer := smithyio.NewRingBuffer(buff[:])
10679
10680	body := io.TeeReader(errorBody, ringBuffer)
10681	decoder := json.NewDecoder(body)
10682	decoder.UseNumber()
10683	var shape interface{}
10684	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10685		var snapshot bytes.Buffer
10686		io.Copy(&snapshot, ringBuffer)
10687		err = &smithy.DeserializationError{
10688			Err:      fmt.Errorf("failed to decode response body, %w", err),
10689			Snapshot: snapshot.Bytes(),
10690		}
10691		return err
10692	}
10693
10694	output := &types.InvalidSecretsManagerResourceException{}
10695	err := awsAwsjson11_deserializeDocumentInvalidSecretsManagerResourceException(&output, shape)
10696
10697	if err != nil {
10698		var snapshot bytes.Buffer
10699		io.Copy(&snapshot, ringBuffer)
10700		err = &smithy.DeserializationError{
10701			Err:      fmt.Errorf("failed to decode response body, %w", err),
10702			Snapshot: snapshot.Bytes(),
10703		}
10704		return err
10705	}
10706
10707	errorBody.Seek(0, io.SeekStart)
10708	return output
10709}
10710
10711func awsAwsjson11_deserializeErrorInvalidServiceLinkedRoleStateException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10712	var buff [1024]byte
10713	ringBuffer := smithyio.NewRingBuffer(buff[:])
10714
10715	body := io.TeeReader(errorBody, ringBuffer)
10716	decoder := json.NewDecoder(body)
10717	decoder.UseNumber()
10718	var shape interface{}
10719	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10720		var snapshot bytes.Buffer
10721		io.Copy(&snapshot, ringBuffer)
10722		err = &smithy.DeserializationError{
10723			Err:      fmt.Errorf("failed to decode response body, %w", err),
10724			Snapshot: snapshot.Bytes(),
10725		}
10726		return err
10727	}
10728
10729	output := &types.InvalidServiceLinkedRoleStateException{}
10730	err := awsAwsjson11_deserializeDocumentInvalidServiceLinkedRoleStateException(&output, shape)
10731
10732	if err != nil {
10733		var snapshot bytes.Buffer
10734		io.Copy(&snapshot, ringBuffer)
10735		err = &smithy.DeserializationError{
10736			Err:      fmt.Errorf("failed to decode response body, %w", err),
10737			Snapshot: snapshot.Bytes(),
10738		}
10739		return err
10740	}
10741
10742	errorBody.Seek(0, io.SeekStart)
10743	return output
10744}
10745
10746func awsAwsjson11_deserializeErrorInvalidUserStatusException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10747	var buff [1024]byte
10748	ringBuffer := smithyio.NewRingBuffer(buff[:])
10749
10750	body := io.TeeReader(errorBody, ringBuffer)
10751	decoder := json.NewDecoder(body)
10752	decoder.UseNumber()
10753	var shape interface{}
10754	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10755		var snapshot bytes.Buffer
10756		io.Copy(&snapshot, ringBuffer)
10757		err = &smithy.DeserializationError{
10758			Err:      fmt.Errorf("failed to decode response body, %w", err),
10759			Snapshot: snapshot.Bytes(),
10760		}
10761		return err
10762	}
10763
10764	output := &types.InvalidUserStatusException{}
10765	err := awsAwsjson11_deserializeDocumentInvalidUserStatusException(&output, shape)
10766
10767	if err != nil {
10768		var snapshot bytes.Buffer
10769		io.Copy(&snapshot, ringBuffer)
10770		err = &smithy.DeserializationError{
10771			Err:      fmt.Errorf("failed to decode response body, %w", err),
10772			Snapshot: snapshot.Bytes(),
10773		}
10774		return err
10775	}
10776
10777	errorBody.Seek(0, io.SeekStart)
10778	return output
10779}
10780
10781func awsAwsjson11_deserializeErrorLimitExceededException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10782	var buff [1024]byte
10783	ringBuffer := smithyio.NewRingBuffer(buff[:])
10784
10785	body := io.TeeReader(errorBody, ringBuffer)
10786	decoder := json.NewDecoder(body)
10787	decoder.UseNumber()
10788	var shape interface{}
10789	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10790		var snapshot bytes.Buffer
10791		io.Copy(&snapshot, ringBuffer)
10792		err = &smithy.DeserializationError{
10793			Err:      fmt.Errorf("failed to decode response body, %w", err),
10794			Snapshot: snapshot.Bytes(),
10795		}
10796		return err
10797	}
10798
10799	output := &types.LimitExceededException{}
10800	err := awsAwsjson11_deserializeDocumentLimitExceededException(&output, shape)
10801
10802	if err != nil {
10803		var snapshot bytes.Buffer
10804		io.Copy(&snapshot, ringBuffer)
10805		err = &smithy.DeserializationError{
10806			Err:      fmt.Errorf("failed to decode response body, %w", err),
10807			Snapshot: snapshot.Bytes(),
10808		}
10809		return err
10810	}
10811
10812	errorBody.Seek(0, io.SeekStart)
10813	return output
10814}
10815
10816func awsAwsjson11_deserializeErrorNameInUseException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10817	var buff [1024]byte
10818	ringBuffer := smithyio.NewRingBuffer(buff[:])
10819
10820	body := io.TeeReader(errorBody, ringBuffer)
10821	decoder := json.NewDecoder(body)
10822	decoder.UseNumber()
10823	var shape interface{}
10824	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10825		var snapshot bytes.Buffer
10826		io.Copy(&snapshot, ringBuffer)
10827		err = &smithy.DeserializationError{
10828			Err:      fmt.Errorf("failed to decode response body, %w", err),
10829			Snapshot: snapshot.Bytes(),
10830		}
10831		return err
10832	}
10833
10834	output := &types.NameInUseException{}
10835	err := awsAwsjson11_deserializeDocumentNameInUseException(&output, shape)
10836
10837	if err != nil {
10838		var snapshot bytes.Buffer
10839		io.Copy(&snapshot, ringBuffer)
10840		err = &smithy.DeserializationError{
10841			Err:      fmt.Errorf("failed to decode response body, %w", err),
10842			Snapshot: snapshot.Bytes(),
10843		}
10844		return err
10845	}
10846
10847	errorBody.Seek(0, io.SeekStart)
10848	return output
10849}
10850
10851func awsAwsjson11_deserializeErrorNotFoundException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10852	var buff [1024]byte
10853	ringBuffer := smithyio.NewRingBuffer(buff[:])
10854
10855	body := io.TeeReader(errorBody, ringBuffer)
10856	decoder := json.NewDecoder(body)
10857	decoder.UseNumber()
10858	var shape interface{}
10859	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10860		var snapshot bytes.Buffer
10861		io.Copy(&snapshot, ringBuffer)
10862		err = &smithy.DeserializationError{
10863			Err:      fmt.Errorf("failed to decode response body, %w", err),
10864			Snapshot: snapshot.Bytes(),
10865		}
10866		return err
10867	}
10868
10869	output := &types.NotFoundException{}
10870	err := awsAwsjson11_deserializeDocumentNotFoundException(&output, shape)
10871
10872	if err != nil {
10873		var snapshot bytes.Buffer
10874		io.Copy(&snapshot, ringBuffer)
10875		err = &smithy.DeserializationError{
10876			Err:      fmt.Errorf("failed to decode response body, %w", err),
10877			Snapshot: snapshot.Bytes(),
10878		}
10879		return err
10880	}
10881
10882	errorBody.Seek(0, io.SeekStart)
10883	return output
10884}
10885
10886func awsAwsjson11_deserializeErrorResourceAssociatedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10887	var buff [1024]byte
10888	ringBuffer := smithyio.NewRingBuffer(buff[:])
10889
10890	body := io.TeeReader(errorBody, ringBuffer)
10891	decoder := json.NewDecoder(body)
10892	decoder.UseNumber()
10893	var shape interface{}
10894	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10895		var snapshot bytes.Buffer
10896		io.Copy(&snapshot, ringBuffer)
10897		err = &smithy.DeserializationError{
10898			Err:      fmt.Errorf("failed to decode response body, %w", err),
10899			Snapshot: snapshot.Bytes(),
10900		}
10901		return err
10902	}
10903
10904	output := &types.ResourceAssociatedException{}
10905	err := awsAwsjson11_deserializeDocumentResourceAssociatedException(&output, shape)
10906
10907	if err != nil {
10908		var snapshot bytes.Buffer
10909		io.Copy(&snapshot, ringBuffer)
10910		err = &smithy.DeserializationError{
10911			Err:      fmt.Errorf("failed to decode response body, %w", err),
10912			Snapshot: snapshot.Bytes(),
10913		}
10914		return err
10915	}
10916
10917	errorBody.Seek(0, io.SeekStart)
10918	return output
10919}
10920
10921func awsAwsjson11_deserializeErrorResourceInUseException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10922	var buff [1024]byte
10923	ringBuffer := smithyio.NewRingBuffer(buff[:])
10924
10925	body := io.TeeReader(errorBody, ringBuffer)
10926	decoder := json.NewDecoder(body)
10927	decoder.UseNumber()
10928	var shape interface{}
10929	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10930		var snapshot bytes.Buffer
10931		io.Copy(&snapshot, ringBuffer)
10932		err = &smithy.DeserializationError{
10933			Err:      fmt.Errorf("failed to decode response body, %w", err),
10934			Snapshot: snapshot.Bytes(),
10935		}
10936		return err
10937	}
10938
10939	output := &types.ResourceInUseException{}
10940	err := awsAwsjson11_deserializeDocumentResourceInUseException(&output, shape)
10941
10942	if err != nil {
10943		var snapshot bytes.Buffer
10944		io.Copy(&snapshot, ringBuffer)
10945		err = &smithy.DeserializationError{
10946			Err:      fmt.Errorf("failed to decode response body, %w", err),
10947			Snapshot: snapshot.Bytes(),
10948		}
10949		return err
10950	}
10951
10952	errorBody.Seek(0, io.SeekStart)
10953	return output
10954}
10955
10956func awsAwsjson11_deserializeErrorSkillNotLinkedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10957	var buff [1024]byte
10958	ringBuffer := smithyio.NewRingBuffer(buff[:])
10959
10960	body := io.TeeReader(errorBody, ringBuffer)
10961	decoder := json.NewDecoder(body)
10962	decoder.UseNumber()
10963	var shape interface{}
10964	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
10965		var snapshot bytes.Buffer
10966		io.Copy(&snapshot, ringBuffer)
10967		err = &smithy.DeserializationError{
10968			Err:      fmt.Errorf("failed to decode response body, %w", err),
10969			Snapshot: snapshot.Bytes(),
10970		}
10971		return err
10972	}
10973
10974	output := &types.SkillNotLinkedException{}
10975	err := awsAwsjson11_deserializeDocumentSkillNotLinkedException(&output, shape)
10976
10977	if err != nil {
10978		var snapshot bytes.Buffer
10979		io.Copy(&snapshot, ringBuffer)
10980		err = &smithy.DeserializationError{
10981			Err:      fmt.Errorf("failed to decode response body, %w", err),
10982			Snapshot: snapshot.Bytes(),
10983		}
10984		return err
10985	}
10986
10987	errorBody.Seek(0, io.SeekStart)
10988	return output
10989}
10990
10991func awsAwsjson11_deserializeErrorUnauthorizedException(response *smithyhttp.Response, errorBody *bytes.Reader) error {
10992	var buff [1024]byte
10993	ringBuffer := smithyio.NewRingBuffer(buff[:])
10994
10995	body := io.TeeReader(errorBody, ringBuffer)
10996	decoder := json.NewDecoder(body)
10997	decoder.UseNumber()
10998	var shape interface{}
10999	if err := decoder.Decode(&shape); err != nil && err != io.EOF {
11000		var snapshot bytes.Buffer
11001		io.Copy(&snapshot, ringBuffer)
11002		err = &smithy.DeserializationError{
11003			Err:      fmt.Errorf("failed to decode response body, %w", err),
11004			Snapshot: snapshot.Bytes(),
11005		}
11006		return err
11007	}
11008
11009	output := &types.UnauthorizedException{}
11010	err := awsAwsjson11_deserializeDocumentUnauthorizedException(&output, shape)
11011
11012	if err != nil {
11013		var snapshot bytes.Buffer
11014		io.Copy(&snapshot, ringBuffer)
11015		err = &smithy.DeserializationError{
11016			Err:      fmt.Errorf("failed to decode response body, %w", err),
11017			Snapshot: snapshot.Bytes(),
11018		}
11019		return err
11020	}
11021
11022	errorBody.Seek(0, io.SeekStart)
11023	return output
11024}
11025
11026func awsAwsjson11_deserializeDocumentAddressBook(v **types.AddressBook, value interface{}) error {
11027	if v == nil {
11028		return fmt.Errorf("unexpected nil of type %T", v)
11029	}
11030	if value == nil {
11031		return nil
11032	}
11033
11034	shape, ok := value.(map[string]interface{})
11035	if !ok {
11036		return fmt.Errorf("unexpected JSON type %v", value)
11037	}
11038
11039	var sv *types.AddressBook
11040	if *v == nil {
11041		sv = &types.AddressBook{}
11042	} else {
11043		sv = *v
11044	}
11045
11046	for key, value := range shape {
11047		switch key {
11048		case "AddressBookArn":
11049			if value != nil {
11050				jtv, ok := value.(string)
11051				if !ok {
11052					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11053				}
11054				sv.AddressBookArn = ptr.String(jtv)
11055			}
11056
11057		case "Description":
11058			if value != nil {
11059				jtv, ok := value.(string)
11060				if !ok {
11061					return fmt.Errorf("expected AddressBookDescription to be of type string, got %T instead", value)
11062				}
11063				sv.Description = ptr.String(jtv)
11064			}
11065
11066		case "Name":
11067			if value != nil {
11068				jtv, ok := value.(string)
11069				if !ok {
11070					return fmt.Errorf("expected AddressBookName to be of type string, got %T instead", value)
11071				}
11072				sv.Name = ptr.String(jtv)
11073			}
11074
11075		default:
11076			_, _ = key, value
11077
11078		}
11079	}
11080	*v = sv
11081	return nil
11082}
11083
11084func awsAwsjson11_deserializeDocumentAddressBookData(v **types.AddressBookData, value interface{}) error {
11085	if v == nil {
11086		return fmt.Errorf("unexpected nil of type %T", v)
11087	}
11088	if value == nil {
11089		return nil
11090	}
11091
11092	shape, ok := value.(map[string]interface{})
11093	if !ok {
11094		return fmt.Errorf("unexpected JSON type %v", value)
11095	}
11096
11097	var sv *types.AddressBookData
11098	if *v == nil {
11099		sv = &types.AddressBookData{}
11100	} else {
11101		sv = *v
11102	}
11103
11104	for key, value := range shape {
11105		switch key {
11106		case "AddressBookArn":
11107			if value != nil {
11108				jtv, ok := value.(string)
11109				if !ok {
11110					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11111				}
11112				sv.AddressBookArn = ptr.String(jtv)
11113			}
11114
11115		case "Description":
11116			if value != nil {
11117				jtv, ok := value.(string)
11118				if !ok {
11119					return fmt.Errorf("expected AddressBookDescription to be of type string, got %T instead", value)
11120				}
11121				sv.Description = ptr.String(jtv)
11122			}
11123
11124		case "Name":
11125			if value != nil {
11126				jtv, ok := value.(string)
11127				if !ok {
11128					return fmt.Errorf("expected AddressBookName to be of type string, got %T instead", value)
11129				}
11130				sv.Name = ptr.String(jtv)
11131			}
11132
11133		default:
11134			_, _ = key, value
11135
11136		}
11137	}
11138	*v = sv
11139	return nil
11140}
11141
11142func awsAwsjson11_deserializeDocumentAddressBookDataList(v *[]types.AddressBookData, value interface{}) error {
11143	if v == nil {
11144		return fmt.Errorf("unexpected nil of type %T", v)
11145	}
11146	if value == nil {
11147		return nil
11148	}
11149
11150	shape, ok := value.([]interface{})
11151	if !ok {
11152		return fmt.Errorf("unexpected JSON type %v", value)
11153	}
11154
11155	var cv []types.AddressBookData
11156	if *v == nil {
11157		cv = []types.AddressBookData{}
11158	} else {
11159		cv = *v
11160	}
11161
11162	for _, value := range shape {
11163		var col types.AddressBookData
11164		destAddr := &col
11165		if err := awsAwsjson11_deserializeDocumentAddressBookData(&destAddr, value); err != nil {
11166			return err
11167		}
11168		col = *destAddr
11169		cv = append(cv, col)
11170
11171	}
11172	*v = cv
11173	return nil
11174}
11175
11176func awsAwsjson11_deserializeDocumentAlreadyExistsException(v **types.AlreadyExistsException, value interface{}) error {
11177	if v == nil {
11178		return fmt.Errorf("unexpected nil of type %T", v)
11179	}
11180	if value == nil {
11181		return nil
11182	}
11183
11184	shape, ok := value.(map[string]interface{})
11185	if !ok {
11186		return fmt.Errorf("unexpected JSON type %v", value)
11187	}
11188
11189	var sv *types.AlreadyExistsException
11190	if *v == nil {
11191		sv = &types.AlreadyExistsException{}
11192	} else {
11193		sv = *v
11194	}
11195
11196	for key, value := range shape {
11197		switch key {
11198		case "Message":
11199			if value != nil {
11200				jtv, ok := value.(string)
11201				if !ok {
11202					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
11203				}
11204				sv.Message = ptr.String(jtv)
11205			}
11206
11207		default:
11208			_, _ = key, value
11209
11210		}
11211	}
11212	*v = sv
11213	return nil
11214}
11215
11216func awsAwsjson11_deserializeDocumentBulletPoints(v *[]string, value interface{}) error {
11217	if v == nil {
11218		return fmt.Errorf("unexpected nil of type %T", v)
11219	}
11220	if value == nil {
11221		return nil
11222	}
11223
11224	shape, ok := value.([]interface{})
11225	if !ok {
11226		return fmt.Errorf("unexpected JSON type %v", value)
11227	}
11228
11229	var cv []string
11230	if *v == nil {
11231		cv = []string{}
11232	} else {
11233		cv = *v
11234	}
11235
11236	for _, value := range shape {
11237		var col string
11238		if value != nil {
11239			jtv, ok := value.(string)
11240			if !ok {
11241				return fmt.Errorf("expected BulletPoint to be of type string, got %T instead", value)
11242			}
11243			col = jtv
11244		}
11245		cv = append(cv, col)
11246
11247	}
11248	*v = cv
11249	return nil
11250}
11251
11252func awsAwsjson11_deserializeDocumentBusinessReport(v **types.BusinessReport, value interface{}) error {
11253	if v == nil {
11254		return fmt.Errorf("unexpected nil of type %T", v)
11255	}
11256	if value == nil {
11257		return nil
11258	}
11259
11260	shape, ok := value.(map[string]interface{})
11261	if !ok {
11262		return fmt.Errorf("unexpected JSON type %v", value)
11263	}
11264
11265	var sv *types.BusinessReport
11266	if *v == nil {
11267		sv = &types.BusinessReport{}
11268	} else {
11269		sv = *v
11270	}
11271
11272	for key, value := range shape {
11273		switch key {
11274		case "DeliveryTime":
11275			if value != nil {
11276				jtv, ok := value.(json.Number)
11277				if !ok {
11278					return fmt.Errorf("expected BusinessReportDeliveryTime to be json.Number, got %T instead", value)
11279				}
11280				f64, err := jtv.Float64()
11281				if err != nil {
11282					return err
11283				}
11284				sv.DeliveryTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
11285			}
11286
11287		case "DownloadUrl":
11288			if value != nil {
11289				jtv, ok := value.(string)
11290				if !ok {
11291					return fmt.Errorf("expected BusinessReportDownloadUrl to be of type string, got %T instead", value)
11292				}
11293				sv.DownloadUrl = ptr.String(jtv)
11294			}
11295
11296		case "FailureCode":
11297			if value != nil {
11298				jtv, ok := value.(string)
11299				if !ok {
11300					return fmt.Errorf("expected BusinessReportFailureCode to be of type string, got %T instead", value)
11301				}
11302				sv.FailureCode = types.BusinessReportFailureCode(jtv)
11303			}
11304
11305		case "S3Location":
11306			if err := awsAwsjson11_deserializeDocumentBusinessReportS3Location(&sv.S3Location, value); err != nil {
11307				return err
11308			}
11309
11310		case "Status":
11311			if value != nil {
11312				jtv, ok := value.(string)
11313				if !ok {
11314					return fmt.Errorf("expected BusinessReportStatus to be of type string, got %T instead", value)
11315				}
11316				sv.Status = types.BusinessReportStatus(jtv)
11317			}
11318
11319		default:
11320			_, _ = key, value
11321
11322		}
11323	}
11324	*v = sv
11325	return nil
11326}
11327
11328func awsAwsjson11_deserializeDocumentBusinessReportContentRange(v **types.BusinessReportContentRange, value interface{}) error {
11329	if v == nil {
11330		return fmt.Errorf("unexpected nil of type %T", v)
11331	}
11332	if value == nil {
11333		return nil
11334	}
11335
11336	shape, ok := value.(map[string]interface{})
11337	if !ok {
11338		return fmt.Errorf("unexpected JSON type %v", value)
11339	}
11340
11341	var sv *types.BusinessReportContentRange
11342	if *v == nil {
11343		sv = &types.BusinessReportContentRange{}
11344	} else {
11345		sv = *v
11346	}
11347
11348	for key, value := range shape {
11349		switch key {
11350		case "Interval":
11351			if value != nil {
11352				jtv, ok := value.(string)
11353				if !ok {
11354					return fmt.Errorf("expected BusinessReportInterval to be of type string, got %T instead", value)
11355				}
11356				sv.Interval = types.BusinessReportInterval(jtv)
11357			}
11358
11359		default:
11360			_, _ = key, value
11361
11362		}
11363	}
11364	*v = sv
11365	return nil
11366}
11367
11368func awsAwsjson11_deserializeDocumentBusinessReportRecurrence(v **types.BusinessReportRecurrence, value interface{}) error {
11369	if v == nil {
11370		return fmt.Errorf("unexpected nil of type %T", v)
11371	}
11372	if value == nil {
11373		return nil
11374	}
11375
11376	shape, ok := value.(map[string]interface{})
11377	if !ok {
11378		return fmt.Errorf("unexpected JSON type %v", value)
11379	}
11380
11381	var sv *types.BusinessReportRecurrence
11382	if *v == nil {
11383		sv = &types.BusinessReportRecurrence{}
11384	} else {
11385		sv = *v
11386	}
11387
11388	for key, value := range shape {
11389		switch key {
11390		case "StartDate":
11391			if value != nil {
11392				jtv, ok := value.(string)
11393				if !ok {
11394					return fmt.Errorf("expected Date to be of type string, got %T instead", value)
11395				}
11396				sv.StartDate = ptr.String(jtv)
11397			}
11398
11399		default:
11400			_, _ = key, value
11401
11402		}
11403	}
11404	*v = sv
11405	return nil
11406}
11407
11408func awsAwsjson11_deserializeDocumentBusinessReportS3Location(v **types.BusinessReportS3Location, value interface{}) error {
11409	if v == nil {
11410		return fmt.Errorf("unexpected nil of type %T", v)
11411	}
11412	if value == nil {
11413		return nil
11414	}
11415
11416	shape, ok := value.(map[string]interface{})
11417	if !ok {
11418		return fmt.Errorf("unexpected JSON type %v", value)
11419	}
11420
11421	var sv *types.BusinessReportS3Location
11422	if *v == nil {
11423		sv = &types.BusinessReportS3Location{}
11424	} else {
11425		sv = *v
11426	}
11427
11428	for key, value := range shape {
11429		switch key {
11430		case "BucketName":
11431			if value != nil {
11432				jtv, ok := value.(string)
11433				if !ok {
11434					return fmt.Errorf("expected CustomerS3BucketName to be of type string, got %T instead", value)
11435				}
11436				sv.BucketName = ptr.String(jtv)
11437			}
11438
11439		case "Path":
11440			if value != nil {
11441				jtv, ok := value.(string)
11442				if !ok {
11443					return fmt.Errorf("expected BusinessReportS3Path to be of type string, got %T instead", value)
11444				}
11445				sv.Path = ptr.String(jtv)
11446			}
11447
11448		default:
11449			_, _ = key, value
11450
11451		}
11452	}
11453	*v = sv
11454	return nil
11455}
11456
11457func awsAwsjson11_deserializeDocumentBusinessReportSchedule(v **types.BusinessReportSchedule, value interface{}) error {
11458	if v == nil {
11459		return fmt.Errorf("unexpected nil of type %T", v)
11460	}
11461	if value == nil {
11462		return nil
11463	}
11464
11465	shape, ok := value.(map[string]interface{})
11466	if !ok {
11467		return fmt.Errorf("unexpected JSON type %v", value)
11468	}
11469
11470	var sv *types.BusinessReportSchedule
11471	if *v == nil {
11472		sv = &types.BusinessReportSchedule{}
11473	} else {
11474		sv = *v
11475	}
11476
11477	for key, value := range shape {
11478		switch key {
11479		case "ContentRange":
11480			if err := awsAwsjson11_deserializeDocumentBusinessReportContentRange(&sv.ContentRange, value); err != nil {
11481				return err
11482			}
11483
11484		case "Format":
11485			if value != nil {
11486				jtv, ok := value.(string)
11487				if !ok {
11488					return fmt.Errorf("expected BusinessReportFormat to be of type string, got %T instead", value)
11489				}
11490				sv.Format = types.BusinessReportFormat(jtv)
11491			}
11492
11493		case "LastBusinessReport":
11494			if err := awsAwsjson11_deserializeDocumentBusinessReport(&sv.LastBusinessReport, value); err != nil {
11495				return err
11496			}
11497
11498		case "Recurrence":
11499			if err := awsAwsjson11_deserializeDocumentBusinessReportRecurrence(&sv.Recurrence, value); err != nil {
11500				return err
11501			}
11502
11503		case "S3BucketName":
11504			if value != nil {
11505				jtv, ok := value.(string)
11506				if !ok {
11507					return fmt.Errorf("expected CustomerS3BucketName to be of type string, got %T instead", value)
11508				}
11509				sv.S3BucketName = ptr.String(jtv)
11510			}
11511
11512		case "S3KeyPrefix":
11513			if value != nil {
11514				jtv, ok := value.(string)
11515				if !ok {
11516					return fmt.Errorf("expected S3KeyPrefix to be of type string, got %T instead", value)
11517				}
11518				sv.S3KeyPrefix = ptr.String(jtv)
11519			}
11520
11521		case "ScheduleArn":
11522			if value != nil {
11523				jtv, ok := value.(string)
11524				if !ok {
11525					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11526				}
11527				sv.ScheduleArn = ptr.String(jtv)
11528			}
11529
11530		case "ScheduleName":
11531			if value != nil {
11532				jtv, ok := value.(string)
11533				if !ok {
11534					return fmt.Errorf("expected BusinessReportScheduleName to be of type string, got %T instead", value)
11535				}
11536				sv.ScheduleName = ptr.String(jtv)
11537			}
11538
11539		default:
11540			_, _ = key, value
11541
11542		}
11543	}
11544	*v = sv
11545	return nil
11546}
11547
11548func awsAwsjson11_deserializeDocumentBusinessReportScheduleList(v *[]types.BusinessReportSchedule, value interface{}) error {
11549	if v == nil {
11550		return fmt.Errorf("unexpected nil of type %T", v)
11551	}
11552	if value == nil {
11553		return nil
11554	}
11555
11556	shape, ok := value.([]interface{})
11557	if !ok {
11558		return fmt.Errorf("unexpected JSON type %v", value)
11559	}
11560
11561	var cv []types.BusinessReportSchedule
11562	if *v == nil {
11563		cv = []types.BusinessReportSchedule{}
11564	} else {
11565		cv = *v
11566	}
11567
11568	for _, value := range shape {
11569		var col types.BusinessReportSchedule
11570		destAddr := &col
11571		if err := awsAwsjson11_deserializeDocumentBusinessReportSchedule(&destAddr, value); err != nil {
11572			return err
11573		}
11574		col = *destAddr
11575		cv = append(cv, col)
11576
11577	}
11578	*v = cv
11579	return nil
11580}
11581
11582func awsAwsjson11_deserializeDocumentCategory(v **types.Category, value interface{}) error {
11583	if v == nil {
11584		return fmt.Errorf("unexpected nil of type %T", v)
11585	}
11586	if value == nil {
11587		return nil
11588	}
11589
11590	shape, ok := value.(map[string]interface{})
11591	if !ok {
11592		return fmt.Errorf("unexpected JSON type %v", value)
11593	}
11594
11595	var sv *types.Category
11596	if *v == nil {
11597		sv = &types.Category{}
11598	} else {
11599		sv = *v
11600	}
11601
11602	for key, value := range shape {
11603		switch key {
11604		case "CategoryId":
11605			if value != nil {
11606				jtv, ok := value.(json.Number)
11607				if !ok {
11608					return fmt.Errorf("expected CategoryId to be json.Number, got %T instead", value)
11609				}
11610				i64, err := jtv.Int64()
11611				if err != nil {
11612					return err
11613				}
11614				sv.CategoryId = ptr.Int64(i64)
11615			}
11616
11617		case "CategoryName":
11618			if value != nil {
11619				jtv, ok := value.(string)
11620				if !ok {
11621					return fmt.Errorf("expected CategoryName to be of type string, got %T instead", value)
11622				}
11623				sv.CategoryName = ptr.String(jtv)
11624			}
11625
11626		default:
11627			_, _ = key, value
11628
11629		}
11630	}
11631	*v = sv
11632	return nil
11633}
11634
11635func awsAwsjson11_deserializeDocumentCategoryList(v *[]types.Category, value interface{}) error {
11636	if v == nil {
11637		return fmt.Errorf("unexpected nil of type %T", v)
11638	}
11639	if value == nil {
11640		return nil
11641	}
11642
11643	shape, ok := value.([]interface{})
11644	if !ok {
11645		return fmt.Errorf("unexpected JSON type %v", value)
11646	}
11647
11648	var cv []types.Category
11649	if *v == nil {
11650		cv = []types.Category{}
11651	} else {
11652		cv = *v
11653	}
11654
11655	for _, value := range shape {
11656		var col types.Category
11657		destAddr := &col
11658		if err := awsAwsjson11_deserializeDocumentCategory(&destAddr, value); err != nil {
11659			return err
11660		}
11661		col = *destAddr
11662		cv = append(cv, col)
11663
11664	}
11665	*v = cv
11666	return nil
11667}
11668
11669func awsAwsjson11_deserializeDocumentConcurrentModificationException(v **types.ConcurrentModificationException, value interface{}) error {
11670	if v == nil {
11671		return fmt.Errorf("unexpected nil of type %T", v)
11672	}
11673	if value == nil {
11674		return nil
11675	}
11676
11677	shape, ok := value.(map[string]interface{})
11678	if !ok {
11679		return fmt.Errorf("unexpected JSON type %v", value)
11680	}
11681
11682	var sv *types.ConcurrentModificationException
11683	if *v == nil {
11684		sv = &types.ConcurrentModificationException{}
11685	} else {
11686		sv = *v
11687	}
11688
11689	for key, value := range shape {
11690		switch key {
11691		case "Message":
11692			if value != nil {
11693				jtv, ok := value.(string)
11694				if !ok {
11695					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
11696				}
11697				sv.Message = ptr.String(jtv)
11698			}
11699
11700		default:
11701			_, _ = key, value
11702
11703		}
11704	}
11705	*v = sv
11706	return nil
11707}
11708
11709func awsAwsjson11_deserializeDocumentConferencePreference(v **types.ConferencePreference, value interface{}) error {
11710	if v == nil {
11711		return fmt.Errorf("unexpected nil of type %T", v)
11712	}
11713	if value == nil {
11714		return nil
11715	}
11716
11717	shape, ok := value.(map[string]interface{})
11718	if !ok {
11719		return fmt.Errorf("unexpected JSON type %v", value)
11720	}
11721
11722	var sv *types.ConferencePreference
11723	if *v == nil {
11724		sv = &types.ConferencePreference{}
11725	} else {
11726		sv = *v
11727	}
11728
11729	for key, value := range shape {
11730		switch key {
11731		case "DefaultConferenceProviderArn":
11732			if value != nil {
11733				jtv, ok := value.(string)
11734				if !ok {
11735					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11736				}
11737				sv.DefaultConferenceProviderArn = ptr.String(jtv)
11738			}
11739
11740		default:
11741			_, _ = key, value
11742
11743		}
11744	}
11745	*v = sv
11746	return nil
11747}
11748
11749func awsAwsjson11_deserializeDocumentConferenceProvider(v **types.ConferenceProvider, value interface{}) error {
11750	if v == nil {
11751		return fmt.Errorf("unexpected nil of type %T", v)
11752	}
11753	if value == nil {
11754		return nil
11755	}
11756
11757	shape, ok := value.(map[string]interface{})
11758	if !ok {
11759		return fmt.Errorf("unexpected JSON type %v", value)
11760	}
11761
11762	var sv *types.ConferenceProvider
11763	if *v == nil {
11764		sv = &types.ConferenceProvider{}
11765	} else {
11766		sv = *v
11767	}
11768
11769	for key, value := range shape {
11770		switch key {
11771		case "Arn":
11772			if value != nil {
11773				jtv, ok := value.(string)
11774				if !ok {
11775					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11776				}
11777				sv.Arn = ptr.String(jtv)
11778			}
11779
11780		case "IPDialIn":
11781			if err := awsAwsjson11_deserializeDocumentIPDialIn(&sv.IPDialIn, value); err != nil {
11782				return err
11783			}
11784
11785		case "MeetingSetting":
11786			if err := awsAwsjson11_deserializeDocumentMeetingSetting(&sv.MeetingSetting, value); err != nil {
11787				return err
11788			}
11789
11790		case "Name":
11791			if value != nil {
11792				jtv, ok := value.(string)
11793				if !ok {
11794					return fmt.Errorf("expected ConferenceProviderName to be of type string, got %T instead", value)
11795				}
11796				sv.Name = ptr.String(jtv)
11797			}
11798
11799		case "PSTNDialIn":
11800			if err := awsAwsjson11_deserializeDocumentPSTNDialIn(&sv.PSTNDialIn, value); err != nil {
11801				return err
11802			}
11803
11804		case "Type":
11805			if value != nil {
11806				jtv, ok := value.(string)
11807				if !ok {
11808					return fmt.Errorf("expected ConferenceProviderType to be of type string, got %T instead", value)
11809				}
11810				sv.Type = types.ConferenceProviderType(jtv)
11811			}
11812
11813		default:
11814			_, _ = key, value
11815
11816		}
11817	}
11818	*v = sv
11819	return nil
11820}
11821
11822func awsAwsjson11_deserializeDocumentConferenceProvidersList(v *[]types.ConferenceProvider, value interface{}) error {
11823	if v == nil {
11824		return fmt.Errorf("unexpected nil of type %T", v)
11825	}
11826	if value == nil {
11827		return nil
11828	}
11829
11830	shape, ok := value.([]interface{})
11831	if !ok {
11832		return fmt.Errorf("unexpected JSON type %v", value)
11833	}
11834
11835	var cv []types.ConferenceProvider
11836	if *v == nil {
11837		cv = []types.ConferenceProvider{}
11838	} else {
11839		cv = *v
11840	}
11841
11842	for _, value := range shape {
11843		var col types.ConferenceProvider
11844		destAddr := &col
11845		if err := awsAwsjson11_deserializeDocumentConferenceProvider(&destAddr, value); err != nil {
11846			return err
11847		}
11848		col = *destAddr
11849		cv = append(cv, col)
11850
11851	}
11852	*v = cv
11853	return nil
11854}
11855
11856func awsAwsjson11_deserializeDocumentContact(v **types.Contact, value interface{}) error {
11857	if v == nil {
11858		return fmt.Errorf("unexpected nil of type %T", v)
11859	}
11860	if value == nil {
11861		return nil
11862	}
11863
11864	shape, ok := value.(map[string]interface{})
11865	if !ok {
11866		return fmt.Errorf("unexpected JSON type %v", value)
11867	}
11868
11869	var sv *types.Contact
11870	if *v == nil {
11871		sv = &types.Contact{}
11872	} else {
11873		sv = *v
11874	}
11875
11876	for key, value := range shape {
11877		switch key {
11878		case "ContactArn":
11879			if value != nil {
11880				jtv, ok := value.(string)
11881				if !ok {
11882					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11883				}
11884				sv.ContactArn = ptr.String(jtv)
11885			}
11886
11887		case "DisplayName":
11888			if value != nil {
11889				jtv, ok := value.(string)
11890				if !ok {
11891					return fmt.Errorf("expected ContactName to be of type string, got %T instead", value)
11892				}
11893				sv.DisplayName = ptr.String(jtv)
11894			}
11895
11896		case "FirstName":
11897			if value != nil {
11898				jtv, ok := value.(string)
11899				if !ok {
11900					return fmt.Errorf("expected ContactName to be of type string, got %T instead", value)
11901				}
11902				sv.FirstName = ptr.String(jtv)
11903			}
11904
11905		case "LastName":
11906			if value != nil {
11907				jtv, ok := value.(string)
11908				if !ok {
11909					return fmt.Errorf("expected ContactName to be of type string, got %T instead", value)
11910				}
11911				sv.LastName = ptr.String(jtv)
11912			}
11913
11914		case "PhoneNumber":
11915			if value != nil {
11916				jtv, ok := value.(string)
11917				if !ok {
11918					return fmt.Errorf("expected RawPhoneNumber to be of type string, got %T instead", value)
11919				}
11920				sv.PhoneNumber = ptr.String(jtv)
11921			}
11922
11923		case "PhoneNumbers":
11924			if err := awsAwsjson11_deserializeDocumentPhoneNumberList(&sv.PhoneNumbers, value); err != nil {
11925				return err
11926			}
11927
11928		case "SipAddresses":
11929			if err := awsAwsjson11_deserializeDocumentSipAddressList(&sv.SipAddresses, value); err != nil {
11930				return err
11931			}
11932
11933		default:
11934			_, _ = key, value
11935
11936		}
11937	}
11938	*v = sv
11939	return nil
11940}
11941
11942func awsAwsjson11_deserializeDocumentContactData(v **types.ContactData, value interface{}) error {
11943	if v == nil {
11944		return fmt.Errorf("unexpected nil of type %T", v)
11945	}
11946	if value == nil {
11947		return nil
11948	}
11949
11950	shape, ok := value.(map[string]interface{})
11951	if !ok {
11952		return fmt.Errorf("unexpected JSON type %v", value)
11953	}
11954
11955	var sv *types.ContactData
11956	if *v == nil {
11957		sv = &types.ContactData{}
11958	} else {
11959		sv = *v
11960	}
11961
11962	for key, value := range shape {
11963		switch key {
11964		case "ContactArn":
11965			if value != nil {
11966				jtv, ok := value.(string)
11967				if !ok {
11968					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
11969				}
11970				sv.ContactArn = ptr.String(jtv)
11971			}
11972
11973		case "DisplayName":
11974			if value != nil {
11975				jtv, ok := value.(string)
11976				if !ok {
11977					return fmt.Errorf("expected ContactName to be of type string, got %T instead", value)
11978				}
11979				sv.DisplayName = ptr.String(jtv)
11980			}
11981
11982		case "FirstName":
11983			if value != nil {
11984				jtv, ok := value.(string)
11985				if !ok {
11986					return fmt.Errorf("expected ContactName to be of type string, got %T instead", value)
11987				}
11988				sv.FirstName = ptr.String(jtv)
11989			}
11990
11991		case "LastName":
11992			if value != nil {
11993				jtv, ok := value.(string)
11994				if !ok {
11995					return fmt.Errorf("expected ContactName to be of type string, got %T instead", value)
11996				}
11997				sv.LastName = ptr.String(jtv)
11998			}
11999
12000		case "PhoneNumber":
12001			if value != nil {
12002				jtv, ok := value.(string)
12003				if !ok {
12004					return fmt.Errorf("expected RawPhoneNumber to be of type string, got %T instead", value)
12005				}
12006				sv.PhoneNumber = ptr.String(jtv)
12007			}
12008
12009		case "PhoneNumbers":
12010			if err := awsAwsjson11_deserializeDocumentPhoneNumberList(&sv.PhoneNumbers, value); err != nil {
12011				return err
12012			}
12013
12014		case "SipAddresses":
12015			if err := awsAwsjson11_deserializeDocumentSipAddressList(&sv.SipAddresses, value); err != nil {
12016				return err
12017			}
12018
12019		default:
12020			_, _ = key, value
12021
12022		}
12023	}
12024	*v = sv
12025	return nil
12026}
12027
12028func awsAwsjson11_deserializeDocumentContactDataList(v *[]types.ContactData, value interface{}) error {
12029	if v == nil {
12030		return fmt.Errorf("unexpected nil of type %T", v)
12031	}
12032	if value == nil {
12033		return nil
12034	}
12035
12036	shape, ok := value.([]interface{})
12037	if !ok {
12038		return fmt.Errorf("unexpected JSON type %v", value)
12039	}
12040
12041	var cv []types.ContactData
12042	if *v == nil {
12043		cv = []types.ContactData{}
12044	} else {
12045		cv = *v
12046	}
12047
12048	for _, value := range shape {
12049		var col types.ContactData
12050		destAddr := &col
12051		if err := awsAwsjson11_deserializeDocumentContactData(&destAddr, value); err != nil {
12052			return err
12053		}
12054		col = *destAddr
12055		cv = append(cv, col)
12056
12057	}
12058	*v = cv
12059	return nil
12060}
12061
12062func awsAwsjson11_deserializeDocumentDeveloperInfo(v **types.DeveloperInfo, value interface{}) error {
12063	if v == nil {
12064		return fmt.Errorf("unexpected nil of type %T", v)
12065	}
12066	if value == nil {
12067		return nil
12068	}
12069
12070	shape, ok := value.(map[string]interface{})
12071	if !ok {
12072		return fmt.Errorf("unexpected JSON type %v", value)
12073	}
12074
12075	var sv *types.DeveloperInfo
12076	if *v == nil {
12077		sv = &types.DeveloperInfo{}
12078	} else {
12079		sv = *v
12080	}
12081
12082	for key, value := range shape {
12083		switch key {
12084		case "DeveloperName":
12085			if value != nil {
12086				jtv, ok := value.(string)
12087				if !ok {
12088					return fmt.Errorf("expected DeveloperName to be of type string, got %T instead", value)
12089				}
12090				sv.DeveloperName = ptr.String(jtv)
12091			}
12092
12093		case "Email":
12094			if value != nil {
12095				jtv, ok := value.(string)
12096				if !ok {
12097					return fmt.Errorf("expected Email to be of type string, got %T instead", value)
12098				}
12099				sv.Email = ptr.String(jtv)
12100			}
12101
12102		case "PrivacyPolicy":
12103			if value != nil {
12104				jtv, ok := value.(string)
12105				if !ok {
12106					return fmt.Errorf("expected PrivacyPolicy to be of type string, got %T instead", value)
12107				}
12108				sv.PrivacyPolicy = ptr.String(jtv)
12109			}
12110
12111		case "Url":
12112			if value != nil {
12113				jtv, ok := value.(string)
12114				if !ok {
12115					return fmt.Errorf("expected Url to be of type string, got %T instead", value)
12116				}
12117				sv.Url = ptr.String(jtv)
12118			}
12119
12120		default:
12121			_, _ = key, value
12122
12123		}
12124	}
12125	*v = sv
12126	return nil
12127}
12128
12129func awsAwsjson11_deserializeDocumentDevice(v **types.Device, value interface{}) error {
12130	if v == nil {
12131		return fmt.Errorf("unexpected nil of type %T", v)
12132	}
12133	if value == nil {
12134		return nil
12135	}
12136
12137	shape, ok := value.(map[string]interface{})
12138	if !ok {
12139		return fmt.Errorf("unexpected JSON type %v", value)
12140	}
12141
12142	var sv *types.Device
12143	if *v == nil {
12144		sv = &types.Device{}
12145	} else {
12146		sv = *v
12147	}
12148
12149	for key, value := range shape {
12150		switch key {
12151		case "DeviceArn":
12152			if value != nil {
12153				jtv, ok := value.(string)
12154				if !ok {
12155					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12156				}
12157				sv.DeviceArn = ptr.String(jtv)
12158			}
12159
12160		case "DeviceName":
12161			if value != nil {
12162				jtv, ok := value.(string)
12163				if !ok {
12164					return fmt.Errorf("expected DeviceName to be of type string, got %T instead", value)
12165				}
12166				sv.DeviceName = ptr.String(jtv)
12167			}
12168
12169		case "DeviceSerialNumber":
12170			if value != nil {
12171				jtv, ok := value.(string)
12172				if !ok {
12173					return fmt.Errorf("expected DeviceSerialNumber to be of type string, got %T instead", value)
12174				}
12175				sv.DeviceSerialNumber = ptr.String(jtv)
12176			}
12177
12178		case "DeviceStatus":
12179			if value != nil {
12180				jtv, ok := value.(string)
12181				if !ok {
12182					return fmt.Errorf("expected DeviceStatus to be of type string, got %T instead", value)
12183				}
12184				sv.DeviceStatus = types.DeviceStatus(jtv)
12185			}
12186
12187		case "DeviceStatusInfo":
12188			if err := awsAwsjson11_deserializeDocumentDeviceStatusInfo(&sv.DeviceStatusInfo, value); err != nil {
12189				return err
12190			}
12191
12192		case "DeviceType":
12193			if value != nil {
12194				jtv, ok := value.(string)
12195				if !ok {
12196					return fmt.Errorf("expected DeviceType to be of type string, got %T instead", value)
12197				}
12198				sv.DeviceType = ptr.String(jtv)
12199			}
12200
12201		case "MacAddress":
12202			if value != nil {
12203				jtv, ok := value.(string)
12204				if !ok {
12205					return fmt.Errorf("expected MacAddress to be of type string, got %T instead", value)
12206				}
12207				sv.MacAddress = ptr.String(jtv)
12208			}
12209
12210		case "NetworkProfileInfo":
12211			if err := awsAwsjson11_deserializeDocumentDeviceNetworkProfileInfo(&sv.NetworkProfileInfo, value); err != nil {
12212				return err
12213			}
12214
12215		case "RoomArn":
12216			if value != nil {
12217				jtv, ok := value.(string)
12218				if !ok {
12219					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12220				}
12221				sv.RoomArn = ptr.String(jtv)
12222			}
12223
12224		case "SoftwareVersion":
12225			if value != nil {
12226				jtv, ok := value.(string)
12227				if !ok {
12228					return fmt.Errorf("expected SoftwareVersion to be of type string, got %T instead", value)
12229				}
12230				sv.SoftwareVersion = ptr.String(jtv)
12231			}
12232
12233		default:
12234			_, _ = key, value
12235
12236		}
12237	}
12238	*v = sv
12239	return nil
12240}
12241
12242func awsAwsjson11_deserializeDocumentDeviceData(v **types.DeviceData, value interface{}) error {
12243	if v == nil {
12244		return fmt.Errorf("unexpected nil of type %T", v)
12245	}
12246	if value == nil {
12247		return nil
12248	}
12249
12250	shape, ok := value.(map[string]interface{})
12251	if !ok {
12252		return fmt.Errorf("unexpected JSON type %v", value)
12253	}
12254
12255	var sv *types.DeviceData
12256	if *v == nil {
12257		sv = &types.DeviceData{}
12258	} else {
12259		sv = *v
12260	}
12261
12262	for key, value := range shape {
12263		switch key {
12264		case "CreatedTime":
12265			if value != nil {
12266				jtv, ok := value.(json.Number)
12267				if !ok {
12268					return fmt.Errorf("expected DeviceDataCreatedTime to be json.Number, got %T instead", value)
12269				}
12270				f64, err := jtv.Float64()
12271				if err != nil {
12272					return err
12273				}
12274				sv.CreatedTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
12275			}
12276
12277		case "DeviceArn":
12278			if value != nil {
12279				jtv, ok := value.(string)
12280				if !ok {
12281					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12282				}
12283				sv.DeviceArn = ptr.String(jtv)
12284			}
12285
12286		case "DeviceName":
12287			if value != nil {
12288				jtv, ok := value.(string)
12289				if !ok {
12290					return fmt.Errorf("expected DeviceName to be of type string, got %T instead", value)
12291				}
12292				sv.DeviceName = ptr.String(jtv)
12293			}
12294
12295		case "DeviceSerialNumber":
12296			if value != nil {
12297				jtv, ok := value.(string)
12298				if !ok {
12299					return fmt.Errorf("expected DeviceSerialNumber to be of type string, got %T instead", value)
12300				}
12301				sv.DeviceSerialNumber = ptr.String(jtv)
12302			}
12303
12304		case "DeviceStatus":
12305			if value != nil {
12306				jtv, ok := value.(string)
12307				if !ok {
12308					return fmt.Errorf("expected DeviceStatus to be of type string, got %T instead", value)
12309				}
12310				sv.DeviceStatus = types.DeviceStatus(jtv)
12311			}
12312
12313		case "DeviceStatusInfo":
12314			if err := awsAwsjson11_deserializeDocumentDeviceStatusInfo(&sv.DeviceStatusInfo, value); err != nil {
12315				return err
12316			}
12317
12318		case "DeviceType":
12319			if value != nil {
12320				jtv, ok := value.(string)
12321				if !ok {
12322					return fmt.Errorf("expected DeviceType to be of type string, got %T instead", value)
12323				}
12324				sv.DeviceType = ptr.String(jtv)
12325			}
12326
12327		case "MacAddress":
12328			if value != nil {
12329				jtv, ok := value.(string)
12330				if !ok {
12331					return fmt.Errorf("expected MacAddress to be of type string, got %T instead", value)
12332				}
12333				sv.MacAddress = ptr.String(jtv)
12334			}
12335
12336		case "NetworkProfileArn":
12337			if value != nil {
12338				jtv, ok := value.(string)
12339				if !ok {
12340					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12341				}
12342				sv.NetworkProfileArn = ptr.String(jtv)
12343			}
12344
12345		case "NetworkProfileName":
12346			if value != nil {
12347				jtv, ok := value.(string)
12348				if !ok {
12349					return fmt.Errorf("expected NetworkProfileName to be of type string, got %T instead", value)
12350				}
12351				sv.NetworkProfileName = ptr.String(jtv)
12352			}
12353
12354		case "RoomArn":
12355			if value != nil {
12356				jtv, ok := value.(string)
12357				if !ok {
12358					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12359				}
12360				sv.RoomArn = ptr.String(jtv)
12361			}
12362
12363		case "RoomName":
12364			if value != nil {
12365				jtv, ok := value.(string)
12366				if !ok {
12367					return fmt.Errorf("expected DeviceRoomName to be of type string, got %T instead", value)
12368				}
12369				sv.RoomName = ptr.String(jtv)
12370			}
12371
12372		case "SoftwareVersion":
12373			if value != nil {
12374				jtv, ok := value.(string)
12375				if !ok {
12376					return fmt.Errorf("expected SoftwareVersion to be of type string, got %T instead", value)
12377				}
12378				sv.SoftwareVersion = ptr.String(jtv)
12379			}
12380
12381		default:
12382			_, _ = key, value
12383
12384		}
12385	}
12386	*v = sv
12387	return nil
12388}
12389
12390func awsAwsjson11_deserializeDocumentDeviceDataList(v *[]types.DeviceData, value interface{}) error {
12391	if v == nil {
12392		return fmt.Errorf("unexpected nil of type %T", v)
12393	}
12394	if value == nil {
12395		return nil
12396	}
12397
12398	shape, ok := value.([]interface{})
12399	if !ok {
12400		return fmt.Errorf("unexpected JSON type %v", value)
12401	}
12402
12403	var cv []types.DeviceData
12404	if *v == nil {
12405		cv = []types.DeviceData{}
12406	} else {
12407		cv = *v
12408	}
12409
12410	for _, value := range shape {
12411		var col types.DeviceData
12412		destAddr := &col
12413		if err := awsAwsjson11_deserializeDocumentDeviceData(&destAddr, value); err != nil {
12414			return err
12415		}
12416		col = *destAddr
12417		cv = append(cv, col)
12418
12419	}
12420	*v = cv
12421	return nil
12422}
12423
12424func awsAwsjson11_deserializeDocumentDeviceEvent(v **types.DeviceEvent, value interface{}) error {
12425	if v == nil {
12426		return fmt.Errorf("unexpected nil of type %T", v)
12427	}
12428	if value == nil {
12429		return nil
12430	}
12431
12432	shape, ok := value.(map[string]interface{})
12433	if !ok {
12434		return fmt.Errorf("unexpected JSON type %v", value)
12435	}
12436
12437	var sv *types.DeviceEvent
12438	if *v == nil {
12439		sv = &types.DeviceEvent{}
12440	} else {
12441		sv = *v
12442	}
12443
12444	for key, value := range shape {
12445		switch key {
12446		case "Timestamp":
12447			if value != nil {
12448				jtv, ok := value.(json.Number)
12449				if !ok {
12450					return fmt.Errorf("expected DeviceEventTime to be json.Number, got %T instead", value)
12451				}
12452				f64, err := jtv.Float64()
12453				if err != nil {
12454					return err
12455				}
12456				sv.Timestamp = ptr.Time(smithytime.ParseEpochSeconds(f64))
12457			}
12458
12459		case "Type":
12460			if value != nil {
12461				jtv, ok := value.(string)
12462				if !ok {
12463					return fmt.Errorf("expected DeviceEventType to be of type string, got %T instead", value)
12464				}
12465				sv.Type = types.DeviceEventType(jtv)
12466			}
12467
12468		case "Value":
12469			if value != nil {
12470				jtv, ok := value.(string)
12471				if !ok {
12472					return fmt.Errorf("expected DeviceEventValue to be of type string, got %T instead", value)
12473				}
12474				sv.Value = ptr.String(jtv)
12475			}
12476
12477		default:
12478			_, _ = key, value
12479
12480		}
12481	}
12482	*v = sv
12483	return nil
12484}
12485
12486func awsAwsjson11_deserializeDocumentDeviceEventList(v *[]types.DeviceEvent, value interface{}) error {
12487	if v == nil {
12488		return fmt.Errorf("unexpected nil of type %T", v)
12489	}
12490	if value == nil {
12491		return nil
12492	}
12493
12494	shape, ok := value.([]interface{})
12495	if !ok {
12496		return fmt.Errorf("unexpected JSON type %v", value)
12497	}
12498
12499	var cv []types.DeviceEvent
12500	if *v == nil {
12501		cv = []types.DeviceEvent{}
12502	} else {
12503		cv = *v
12504	}
12505
12506	for _, value := range shape {
12507		var col types.DeviceEvent
12508		destAddr := &col
12509		if err := awsAwsjson11_deserializeDocumentDeviceEvent(&destAddr, value); err != nil {
12510			return err
12511		}
12512		col = *destAddr
12513		cv = append(cv, col)
12514
12515	}
12516	*v = cv
12517	return nil
12518}
12519
12520func awsAwsjson11_deserializeDocumentDeviceNetworkProfileInfo(v **types.DeviceNetworkProfileInfo, value interface{}) error {
12521	if v == nil {
12522		return fmt.Errorf("unexpected nil of type %T", v)
12523	}
12524	if value == nil {
12525		return nil
12526	}
12527
12528	shape, ok := value.(map[string]interface{})
12529	if !ok {
12530		return fmt.Errorf("unexpected JSON type %v", value)
12531	}
12532
12533	var sv *types.DeviceNetworkProfileInfo
12534	if *v == nil {
12535		sv = &types.DeviceNetworkProfileInfo{}
12536	} else {
12537		sv = *v
12538	}
12539
12540	for key, value := range shape {
12541		switch key {
12542		case "CertificateArn":
12543			if value != nil {
12544				jtv, ok := value.(string)
12545				if !ok {
12546					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12547				}
12548				sv.CertificateArn = ptr.String(jtv)
12549			}
12550
12551		case "CertificateExpirationTime":
12552			if value != nil {
12553				jtv, ok := value.(json.Number)
12554				if !ok {
12555					return fmt.Errorf("expected CertificateTime to be json.Number, got %T instead", value)
12556				}
12557				f64, err := jtv.Float64()
12558				if err != nil {
12559					return err
12560				}
12561				sv.CertificateExpirationTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
12562			}
12563
12564		case "NetworkProfileArn":
12565			if value != nil {
12566				jtv, ok := value.(string)
12567				if !ok {
12568					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12569				}
12570				sv.NetworkProfileArn = ptr.String(jtv)
12571			}
12572
12573		default:
12574			_, _ = key, value
12575
12576		}
12577	}
12578	*v = sv
12579	return nil
12580}
12581
12582func awsAwsjson11_deserializeDocumentDeviceNotRegisteredException(v **types.DeviceNotRegisteredException, value interface{}) error {
12583	if v == nil {
12584		return fmt.Errorf("unexpected nil of type %T", v)
12585	}
12586	if value == nil {
12587		return nil
12588	}
12589
12590	shape, ok := value.(map[string]interface{})
12591	if !ok {
12592		return fmt.Errorf("unexpected JSON type %v", value)
12593	}
12594
12595	var sv *types.DeviceNotRegisteredException
12596	if *v == nil {
12597		sv = &types.DeviceNotRegisteredException{}
12598	} else {
12599		sv = *v
12600	}
12601
12602	for key, value := range shape {
12603		switch key {
12604		case "Message":
12605			if value != nil {
12606				jtv, ok := value.(string)
12607				if !ok {
12608					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
12609				}
12610				sv.Message = ptr.String(jtv)
12611			}
12612
12613		default:
12614			_, _ = key, value
12615
12616		}
12617	}
12618	*v = sv
12619	return nil
12620}
12621
12622func awsAwsjson11_deserializeDocumentDeviceStatusDetail(v **types.DeviceStatusDetail, value interface{}) error {
12623	if v == nil {
12624		return fmt.Errorf("unexpected nil of type %T", v)
12625	}
12626	if value == nil {
12627		return nil
12628	}
12629
12630	shape, ok := value.(map[string]interface{})
12631	if !ok {
12632		return fmt.Errorf("unexpected JSON type %v", value)
12633	}
12634
12635	var sv *types.DeviceStatusDetail
12636	if *v == nil {
12637		sv = &types.DeviceStatusDetail{}
12638	} else {
12639		sv = *v
12640	}
12641
12642	for key, value := range shape {
12643		switch key {
12644		case "Code":
12645			if value != nil {
12646				jtv, ok := value.(string)
12647				if !ok {
12648					return fmt.Errorf("expected DeviceStatusDetailCode to be of type string, got %T instead", value)
12649				}
12650				sv.Code = types.DeviceStatusDetailCode(jtv)
12651			}
12652
12653		case "Feature":
12654			if value != nil {
12655				jtv, ok := value.(string)
12656				if !ok {
12657					return fmt.Errorf("expected Feature to be of type string, got %T instead", value)
12658				}
12659				sv.Feature = types.Feature(jtv)
12660			}
12661
12662		default:
12663			_, _ = key, value
12664
12665		}
12666	}
12667	*v = sv
12668	return nil
12669}
12670
12671func awsAwsjson11_deserializeDocumentDeviceStatusDetails(v *[]types.DeviceStatusDetail, value interface{}) error {
12672	if v == nil {
12673		return fmt.Errorf("unexpected nil of type %T", v)
12674	}
12675	if value == nil {
12676		return nil
12677	}
12678
12679	shape, ok := value.([]interface{})
12680	if !ok {
12681		return fmt.Errorf("unexpected JSON type %v", value)
12682	}
12683
12684	var cv []types.DeviceStatusDetail
12685	if *v == nil {
12686		cv = []types.DeviceStatusDetail{}
12687	} else {
12688		cv = *v
12689	}
12690
12691	for _, value := range shape {
12692		var col types.DeviceStatusDetail
12693		destAddr := &col
12694		if err := awsAwsjson11_deserializeDocumentDeviceStatusDetail(&destAddr, value); err != nil {
12695			return err
12696		}
12697		col = *destAddr
12698		cv = append(cv, col)
12699
12700	}
12701	*v = cv
12702	return nil
12703}
12704
12705func awsAwsjson11_deserializeDocumentDeviceStatusInfo(v **types.DeviceStatusInfo, value interface{}) error {
12706	if v == nil {
12707		return fmt.Errorf("unexpected nil of type %T", v)
12708	}
12709	if value == nil {
12710		return nil
12711	}
12712
12713	shape, ok := value.(map[string]interface{})
12714	if !ok {
12715		return fmt.Errorf("unexpected JSON type %v", value)
12716	}
12717
12718	var sv *types.DeviceStatusInfo
12719	if *v == nil {
12720		sv = &types.DeviceStatusInfo{}
12721	} else {
12722		sv = *v
12723	}
12724
12725	for key, value := range shape {
12726		switch key {
12727		case "ConnectionStatus":
12728			if value != nil {
12729				jtv, ok := value.(string)
12730				if !ok {
12731					return fmt.Errorf("expected ConnectionStatus to be of type string, got %T instead", value)
12732				}
12733				sv.ConnectionStatus = types.ConnectionStatus(jtv)
12734			}
12735
12736		case "ConnectionStatusUpdatedTime":
12737			if value != nil {
12738				jtv, ok := value.(json.Number)
12739				if !ok {
12740					return fmt.Errorf("expected ConnectionStatusUpdatedTime to be json.Number, got %T instead", value)
12741				}
12742				f64, err := jtv.Float64()
12743				if err != nil {
12744					return err
12745				}
12746				sv.ConnectionStatusUpdatedTime = ptr.Time(smithytime.ParseEpochSeconds(f64))
12747			}
12748
12749		case "DeviceStatusDetails":
12750			if err := awsAwsjson11_deserializeDocumentDeviceStatusDetails(&sv.DeviceStatusDetails, value); err != nil {
12751				return err
12752			}
12753
12754		default:
12755			_, _ = key, value
12756
12757		}
12758	}
12759	*v = sv
12760	return nil
12761}
12762
12763func awsAwsjson11_deserializeDocumentEndOfMeetingReminder(v **types.EndOfMeetingReminder, value interface{}) error {
12764	if v == nil {
12765		return fmt.Errorf("unexpected nil of type %T", v)
12766	}
12767	if value == nil {
12768		return nil
12769	}
12770
12771	shape, ok := value.(map[string]interface{})
12772	if !ok {
12773		return fmt.Errorf("unexpected JSON type %v", value)
12774	}
12775
12776	var sv *types.EndOfMeetingReminder
12777	if *v == nil {
12778		sv = &types.EndOfMeetingReminder{}
12779	} else {
12780		sv = *v
12781	}
12782
12783	for key, value := range shape {
12784		switch key {
12785		case "Enabled":
12786			if value != nil {
12787				jtv, ok := value.(bool)
12788				if !ok {
12789					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
12790				}
12791				sv.Enabled = ptr.Bool(jtv)
12792			}
12793
12794		case "ReminderAtMinutes":
12795			if err := awsAwsjson11_deserializeDocumentEndOfMeetingReminderMinutesList(&sv.ReminderAtMinutes, value); err != nil {
12796				return err
12797			}
12798
12799		case "ReminderType":
12800			if value != nil {
12801				jtv, ok := value.(string)
12802				if !ok {
12803					return fmt.Errorf("expected EndOfMeetingReminderType to be of type string, got %T instead", value)
12804				}
12805				sv.ReminderType = types.EndOfMeetingReminderType(jtv)
12806			}
12807
12808		default:
12809			_, _ = key, value
12810
12811		}
12812	}
12813	*v = sv
12814	return nil
12815}
12816
12817func awsAwsjson11_deserializeDocumentEndOfMeetingReminderMinutesList(v *[]int32, value interface{}) error {
12818	if v == nil {
12819		return fmt.Errorf("unexpected nil of type %T", v)
12820	}
12821	if value == nil {
12822		return nil
12823	}
12824
12825	shape, ok := value.([]interface{})
12826	if !ok {
12827		return fmt.Errorf("unexpected JSON type %v", value)
12828	}
12829
12830	var cv []int32
12831	if *v == nil {
12832		cv = []int32{}
12833	} else {
12834		cv = *v
12835	}
12836
12837	for _, value := range shape {
12838		var col int32
12839		if value != nil {
12840			jtv, ok := value.(json.Number)
12841			if !ok {
12842				return fmt.Errorf("expected Minutes to be json.Number, got %T instead", value)
12843			}
12844			i64, err := jtv.Int64()
12845			if err != nil {
12846				return err
12847			}
12848			col = int32(i64)
12849		}
12850		cv = append(cv, col)
12851
12852	}
12853	*v = cv
12854	return nil
12855}
12856
12857func awsAwsjson11_deserializeDocumentGateway(v **types.Gateway, value interface{}) error {
12858	if v == nil {
12859		return fmt.Errorf("unexpected nil of type %T", v)
12860	}
12861	if value == nil {
12862		return nil
12863	}
12864
12865	shape, ok := value.(map[string]interface{})
12866	if !ok {
12867		return fmt.Errorf("unexpected JSON type %v", value)
12868	}
12869
12870	var sv *types.Gateway
12871	if *v == nil {
12872		sv = &types.Gateway{}
12873	} else {
12874		sv = *v
12875	}
12876
12877	for key, value := range shape {
12878		switch key {
12879		case "Arn":
12880			if value != nil {
12881				jtv, ok := value.(string)
12882				if !ok {
12883					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12884				}
12885				sv.Arn = ptr.String(jtv)
12886			}
12887
12888		case "Description":
12889			if value != nil {
12890				jtv, ok := value.(string)
12891				if !ok {
12892					return fmt.Errorf("expected GatewayDescription to be of type string, got %T instead", value)
12893				}
12894				sv.Description = ptr.String(jtv)
12895			}
12896
12897		case "GatewayGroupArn":
12898			if value != nil {
12899				jtv, ok := value.(string)
12900				if !ok {
12901					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12902				}
12903				sv.GatewayGroupArn = ptr.String(jtv)
12904			}
12905
12906		case "Name":
12907			if value != nil {
12908				jtv, ok := value.(string)
12909				if !ok {
12910					return fmt.Errorf("expected GatewayName to be of type string, got %T instead", value)
12911				}
12912				sv.Name = ptr.String(jtv)
12913			}
12914
12915		case "SoftwareVersion":
12916			if value != nil {
12917				jtv, ok := value.(string)
12918				if !ok {
12919					return fmt.Errorf("expected GatewayVersion to be of type string, got %T instead", value)
12920				}
12921				sv.SoftwareVersion = ptr.String(jtv)
12922			}
12923
12924		default:
12925			_, _ = key, value
12926
12927		}
12928	}
12929	*v = sv
12930	return nil
12931}
12932
12933func awsAwsjson11_deserializeDocumentGatewayGroup(v **types.GatewayGroup, value interface{}) error {
12934	if v == nil {
12935		return fmt.Errorf("unexpected nil of type %T", v)
12936	}
12937	if value == nil {
12938		return nil
12939	}
12940
12941	shape, ok := value.(map[string]interface{})
12942	if !ok {
12943		return fmt.Errorf("unexpected JSON type %v", value)
12944	}
12945
12946	var sv *types.GatewayGroup
12947	if *v == nil {
12948		sv = &types.GatewayGroup{}
12949	} else {
12950		sv = *v
12951	}
12952
12953	for key, value := range shape {
12954		switch key {
12955		case "Arn":
12956			if value != nil {
12957				jtv, ok := value.(string)
12958				if !ok {
12959					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
12960				}
12961				sv.Arn = ptr.String(jtv)
12962			}
12963
12964		case "Description":
12965			if value != nil {
12966				jtv, ok := value.(string)
12967				if !ok {
12968					return fmt.Errorf("expected GatewayGroupDescription to be of type string, got %T instead", value)
12969				}
12970				sv.Description = ptr.String(jtv)
12971			}
12972
12973		case "Name":
12974			if value != nil {
12975				jtv, ok := value.(string)
12976				if !ok {
12977					return fmt.Errorf("expected GatewayGroupName to be of type string, got %T instead", value)
12978				}
12979				sv.Name = ptr.String(jtv)
12980			}
12981
12982		default:
12983			_, _ = key, value
12984
12985		}
12986	}
12987	*v = sv
12988	return nil
12989}
12990
12991func awsAwsjson11_deserializeDocumentGatewayGroupSummaries(v *[]types.GatewayGroupSummary, value interface{}) error {
12992	if v == nil {
12993		return fmt.Errorf("unexpected nil of type %T", v)
12994	}
12995	if value == nil {
12996		return nil
12997	}
12998
12999	shape, ok := value.([]interface{})
13000	if !ok {
13001		return fmt.Errorf("unexpected JSON type %v", value)
13002	}
13003
13004	var cv []types.GatewayGroupSummary
13005	if *v == nil {
13006		cv = []types.GatewayGroupSummary{}
13007	} else {
13008		cv = *v
13009	}
13010
13011	for _, value := range shape {
13012		var col types.GatewayGroupSummary
13013		destAddr := &col
13014		if err := awsAwsjson11_deserializeDocumentGatewayGroupSummary(&destAddr, value); err != nil {
13015			return err
13016		}
13017		col = *destAddr
13018		cv = append(cv, col)
13019
13020	}
13021	*v = cv
13022	return nil
13023}
13024
13025func awsAwsjson11_deserializeDocumentGatewayGroupSummary(v **types.GatewayGroupSummary, value interface{}) error {
13026	if v == nil {
13027		return fmt.Errorf("unexpected nil of type %T", v)
13028	}
13029	if value == nil {
13030		return nil
13031	}
13032
13033	shape, ok := value.(map[string]interface{})
13034	if !ok {
13035		return fmt.Errorf("unexpected JSON type %v", value)
13036	}
13037
13038	var sv *types.GatewayGroupSummary
13039	if *v == nil {
13040		sv = &types.GatewayGroupSummary{}
13041	} else {
13042		sv = *v
13043	}
13044
13045	for key, value := range shape {
13046		switch key {
13047		case "Arn":
13048			if value != nil {
13049				jtv, ok := value.(string)
13050				if !ok {
13051					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13052				}
13053				sv.Arn = ptr.String(jtv)
13054			}
13055
13056		case "Description":
13057			if value != nil {
13058				jtv, ok := value.(string)
13059				if !ok {
13060					return fmt.Errorf("expected GatewayGroupDescription to be of type string, got %T instead", value)
13061				}
13062				sv.Description = ptr.String(jtv)
13063			}
13064
13065		case "Name":
13066			if value != nil {
13067				jtv, ok := value.(string)
13068				if !ok {
13069					return fmt.Errorf("expected GatewayGroupName to be of type string, got %T instead", value)
13070				}
13071				sv.Name = ptr.String(jtv)
13072			}
13073
13074		default:
13075			_, _ = key, value
13076
13077		}
13078	}
13079	*v = sv
13080	return nil
13081}
13082
13083func awsAwsjson11_deserializeDocumentGatewaySummaries(v *[]types.GatewaySummary, value interface{}) error {
13084	if v == nil {
13085		return fmt.Errorf("unexpected nil of type %T", v)
13086	}
13087	if value == nil {
13088		return nil
13089	}
13090
13091	shape, ok := value.([]interface{})
13092	if !ok {
13093		return fmt.Errorf("unexpected JSON type %v", value)
13094	}
13095
13096	var cv []types.GatewaySummary
13097	if *v == nil {
13098		cv = []types.GatewaySummary{}
13099	} else {
13100		cv = *v
13101	}
13102
13103	for _, value := range shape {
13104		var col types.GatewaySummary
13105		destAddr := &col
13106		if err := awsAwsjson11_deserializeDocumentGatewaySummary(&destAddr, value); err != nil {
13107			return err
13108		}
13109		col = *destAddr
13110		cv = append(cv, col)
13111
13112	}
13113	*v = cv
13114	return nil
13115}
13116
13117func awsAwsjson11_deserializeDocumentGatewaySummary(v **types.GatewaySummary, value interface{}) error {
13118	if v == nil {
13119		return fmt.Errorf("unexpected nil of type %T", v)
13120	}
13121	if value == nil {
13122		return nil
13123	}
13124
13125	shape, ok := value.(map[string]interface{})
13126	if !ok {
13127		return fmt.Errorf("unexpected JSON type %v", value)
13128	}
13129
13130	var sv *types.GatewaySummary
13131	if *v == nil {
13132		sv = &types.GatewaySummary{}
13133	} else {
13134		sv = *v
13135	}
13136
13137	for key, value := range shape {
13138		switch key {
13139		case "Arn":
13140			if value != nil {
13141				jtv, ok := value.(string)
13142				if !ok {
13143					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13144				}
13145				sv.Arn = ptr.String(jtv)
13146			}
13147
13148		case "Description":
13149			if value != nil {
13150				jtv, ok := value.(string)
13151				if !ok {
13152					return fmt.Errorf("expected GatewayDescription to be of type string, got %T instead", value)
13153				}
13154				sv.Description = ptr.String(jtv)
13155			}
13156
13157		case "GatewayGroupArn":
13158			if value != nil {
13159				jtv, ok := value.(string)
13160				if !ok {
13161					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13162				}
13163				sv.GatewayGroupArn = ptr.String(jtv)
13164			}
13165
13166		case "Name":
13167			if value != nil {
13168				jtv, ok := value.(string)
13169				if !ok {
13170					return fmt.Errorf("expected GatewayName to be of type string, got %T instead", value)
13171				}
13172				sv.Name = ptr.String(jtv)
13173			}
13174
13175		case "SoftwareVersion":
13176			if value != nil {
13177				jtv, ok := value.(string)
13178				if !ok {
13179					return fmt.Errorf("expected GatewayVersion to be of type string, got %T instead", value)
13180				}
13181				sv.SoftwareVersion = ptr.String(jtv)
13182			}
13183
13184		default:
13185			_, _ = key, value
13186
13187		}
13188	}
13189	*v = sv
13190	return nil
13191}
13192
13193func awsAwsjson11_deserializeDocumentGenericKeywords(v *[]string, value interface{}) error {
13194	if v == nil {
13195		return fmt.Errorf("unexpected nil of type %T", v)
13196	}
13197	if value == nil {
13198		return nil
13199	}
13200
13201	shape, ok := value.([]interface{})
13202	if !ok {
13203		return fmt.Errorf("unexpected JSON type %v", value)
13204	}
13205
13206	var cv []string
13207	if *v == nil {
13208		cv = []string{}
13209	} else {
13210		cv = *v
13211	}
13212
13213	for _, value := range shape {
13214		var col string
13215		if value != nil {
13216			jtv, ok := value.(string)
13217			if !ok {
13218				return fmt.Errorf("expected GenericKeyword to be of type string, got %T instead", value)
13219			}
13220			col = jtv
13221		}
13222		cv = append(cv, col)
13223
13224	}
13225	*v = cv
13226	return nil
13227}
13228
13229func awsAwsjson11_deserializeDocumentInstantBooking(v **types.InstantBooking, value interface{}) error {
13230	if v == nil {
13231		return fmt.Errorf("unexpected nil of type %T", v)
13232	}
13233	if value == nil {
13234		return nil
13235	}
13236
13237	shape, ok := value.(map[string]interface{})
13238	if !ok {
13239		return fmt.Errorf("unexpected JSON type %v", value)
13240	}
13241
13242	var sv *types.InstantBooking
13243	if *v == nil {
13244		sv = &types.InstantBooking{}
13245	} else {
13246		sv = *v
13247	}
13248
13249	for key, value := range shape {
13250		switch key {
13251		case "DurationInMinutes":
13252			if value != nil {
13253				jtv, ok := value.(json.Number)
13254				if !ok {
13255					return fmt.Errorf("expected Minutes to be json.Number, got %T instead", value)
13256				}
13257				i64, err := jtv.Int64()
13258				if err != nil {
13259					return err
13260				}
13261				sv.DurationInMinutes = ptr.Int32(int32(i64))
13262			}
13263
13264		case "Enabled":
13265			if value != nil {
13266				jtv, ok := value.(bool)
13267				if !ok {
13268					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
13269				}
13270				sv.Enabled = ptr.Bool(jtv)
13271			}
13272
13273		default:
13274			_, _ = key, value
13275
13276		}
13277	}
13278	*v = sv
13279	return nil
13280}
13281
13282func awsAwsjson11_deserializeDocumentInvalidCertificateAuthorityException(v **types.InvalidCertificateAuthorityException, value interface{}) error {
13283	if v == nil {
13284		return fmt.Errorf("unexpected nil of type %T", v)
13285	}
13286	if value == nil {
13287		return nil
13288	}
13289
13290	shape, ok := value.(map[string]interface{})
13291	if !ok {
13292		return fmt.Errorf("unexpected JSON type %v", value)
13293	}
13294
13295	var sv *types.InvalidCertificateAuthorityException
13296	if *v == nil {
13297		sv = &types.InvalidCertificateAuthorityException{}
13298	} else {
13299		sv = *v
13300	}
13301
13302	for key, value := range shape {
13303		switch key {
13304		case "Message":
13305			if value != nil {
13306				jtv, ok := value.(string)
13307				if !ok {
13308					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13309				}
13310				sv.Message = ptr.String(jtv)
13311			}
13312
13313		default:
13314			_, _ = key, value
13315
13316		}
13317	}
13318	*v = sv
13319	return nil
13320}
13321
13322func awsAwsjson11_deserializeDocumentInvalidDeviceException(v **types.InvalidDeviceException, value interface{}) error {
13323	if v == nil {
13324		return fmt.Errorf("unexpected nil of type %T", v)
13325	}
13326	if value == nil {
13327		return nil
13328	}
13329
13330	shape, ok := value.(map[string]interface{})
13331	if !ok {
13332		return fmt.Errorf("unexpected JSON type %v", value)
13333	}
13334
13335	var sv *types.InvalidDeviceException
13336	if *v == nil {
13337		sv = &types.InvalidDeviceException{}
13338	} else {
13339		sv = *v
13340	}
13341
13342	for key, value := range shape {
13343		switch key {
13344		case "Message":
13345			if value != nil {
13346				jtv, ok := value.(string)
13347				if !ok {
13348					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13349				}
13350				sv.Message = ptr.String(jtv)
13351			}
13352
13353		default:
13354			_, _ = key, value
13355
13356		}
13357	}
13358	*v = sv
13359	return nil
13360}
13361
13362func awsAwsjson11_deserializeDocumentInvalidSecretsManagerResourceException(v **types.InvalidSecretsManagerResourceException, value interface{}) error {
13363	if v == nil {
13364		return fmt.Errorf("unexpected nil of type %T", v)
13365	}
13366	if value == nil {
13367		return nil
13368	}
13369
13370	shape, ok := value.(map[string]interface{})
13371	if !ok {
13372		return fmt.Errorf("unexpected JSON type %v", value)
13373	}
13374
13375	var sv *types.InvalidSecretsManagerResourceException
13376	if *v == nil {
13377		sv = &types.InvalidSecretsManagerResourceException{}
13378	} else {
13379		sv = *v
13380	}
13381
13382	for key, value := range shape {
13383		switch key {
13384		case "Message":
13385			if value != nil {
13386				jtv, ok := value.(string)
13387				if !ok {
13388					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13389				}
13390				sv.Message = ptr.String(jtv)
13391			}
13392
13393		default:
13394			_, _ = key, value
13395
13396		}
13397	}
13398	*v = sv
13399	return nil
13400}
13401
13402func awsAwsjson11_deserializeDocumentInvalidServiceLinkedRoleStateException(v **types.InvalidServiceLinkedRoleStateException, value interface{}) error {
13403	if v == nil {
13404		return fmt.Errorf("unexpected nil of type %T", v)
13405	}
13406	if value == nil {
13407		return nil
13408	}
13409
13410	shape, ok := value.(map[string]interface{})
13411	if !ok {
13412		return fmt.Errorf("unexpected JSON type %v", value)
13413	}
13414
13415	var sv *types.InvalidServiceLinkedRoleStateException
13416	if *v == nil {
13417		sv = &types.InvalidServiceLinkedRoleStateException{}
13418	} else {
13419		sv = *v
13420	}
13421
13422	for key, value := range shape {
13423		switch key {
13424		case "Message":
13425			if value != nil {
13426				jtv, ok := value.(string)
13427				if !ok {
13428					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13429				}
13430				sv.Message = ptr.String(jtv)
13431			}
13432
13433		default:
13434			_, _ = key, value
13435
13436		}
13437	}
13438	*v = sv
13439	return nil
13440}
13441
13442func awsAwsjson11_deserializeDocumentInvalidUserStatusException(v **types.InvalidUserStatusException, value interface{}) error {
13443	if v == nil {
13444		return fmt.Errorf("unexpected nil of type %T", v)
13445	}
13446	if value == nil {
13447		return nil
13448	}
13449
13450	shape, ok := value.(map[string]interface{})
13451	if !ok {
13452		return fmt.Errorf("unexpected JSON type %v", value)
13453	}
13454
13455	var sv *types.InvalidUserStatusException
13456	if *v == nil {
13457		sv = &types.InvalidUserStatusException{}
13458	} else {
13459		sv = *v
13460	}
13461
13462	for key, value := range shape {
13463		switch key {
13464		case "Message":
13465			if value != nil {
13466				jtv, ok := value.(string)
13467				if !ok {
13468					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13469				}
13470				sv.Message = ptr.String(jtv)
13471			}
13472
13473		default:
13474			_, _ = key, value
13475
13476		}
13477	}
13478	*v = sv
13479	return nil
13480}
13481
13482func awsAwsjson11_deserializeDocumentIPDialIn(v **types.IPDialIn, value interface{}) error {
13483	if v == nil {
13484		return fmt.Errorf("unexpected nil of type %T", v)
13485	}
13486	if value == nil {
13487		return nil
13488	}
13489
13490	shape, ok := value.(map[string]interface{})
13491	if !ok {
13492		return fmt.Errorf("unexpected JSON type %v", value)
13493	}
13494
13495	var sv *types.IPDialIn
13496	if *v == nil {
13497		sv = &types.IPDialIn{}
13498	} else {
13499		sv = *v
13500	}
13501
13502	for key, value := range shape {
13503		switch key {
13504		case "CommsProtocol":
13505			if value != nil {
13506				jtv, ok := value.(string)
13507				if !ok {
13508					return fmt.Errorf("expected CommsProtocol to be of type string, got %T instead", value)
13509				}
13510				sv.CommsProtocol = types.CommsProtocol(jtv)
13511			}
13512
13513		case "Endpoint":
13514			if value != nil {
13515				jtv, ok := value.(string)
13516				if !ok {
13517					return fmt.Errorf("expected Endpoint to be of type string, got %T instead", value)
13518				}
13519				sv.Endpoint = ptr.String(jtv)
13520			}
13521
13522		default:
13523			_, _ = key, value
13524
13525		}
13526	}
13527	*v = sv
13528	return nil
13529}
13530
13531func awsAwsjson11_deserializeDocumentLimitExceededException(v **types.LimitExceededException, value interface{}) error {
13532	if v == nil {
13533		return fmt.Errorf("unexpected nil of type %T", v)
13534	}
13535	if value == nil {
13536		return nil
13537	}
13538
13539	shape, ok := value.(map[string]interface{})
13540	if !ok {
13541		return fmt.Errorf("unexpected JSON type %v", value)
13542	}
13543
13544	var sv *types.LimitExceededException
13545	if *v == nil {
13546		sv = &types.LimitExceededException{}
13547	} else {
13548		sv = *v
13549	}
13550
13551	for key, value := range shape {
13552		switch key {
13553		case "Message":
13554			if value != nil {
13555				jtv, ok := value.(string)
13556				if !ok {
13557					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13558				}
13559				sv.Message = ptr.String(jtv)
13560			}
13561
13562		default:
13563			_, _ = key, value
13564
13565		}
13566	}
13567	*v = sv
13568	return nil
13569}
13570
13571func awsAwsjson11_deserializeDocumentMeetingRoomConfiguration(v **types.MeetingRoomConfiguration, value interface{}) error {
13572	if v == nil {
13573		return fmt.Errorf("unexpected nil of type %T", v)
13574	}
13575	if value == nil {
13576		return nil
13577	}
13578
13579	shape, ok := value.(map[string]interface{})
13580	if !ok {
13581		return fmt.Errorf("unexpected JSON type %v", value)
13582	}
13583
13584	var sv *types.MeetingRoomConfiguration
13585	if *v == nil {
13586		sv = &types.MeetingRoomConfiguration{}
13587	} else {
13588		sv = *v
13589	}
13590
13591	for key, value := range shape {
13592		switch key {
13593		case "EndOfMeetingReminder":
13594			if err := awsAwsjson11_deserializeDocumentEndOfMeetingReminder(&sv.EndOfMeetingReminder, value); err != nil {
13595				return err
13596			}
13597
13598		case "InstantBooking":
13599			if err := awsAwsjson11_deserializeDocumentInstantBooking(&sv.InstantBooking, value); err != nil {
13600				return err
13601			}
13602
13603		case "RequireCheckIn":
13604			if err := awsAwsjson11_deserializeDocumentRequireCheckIn(&sv.RequireCheckIn, value); err != nil {
13605				return err
13606			}
13607
13608		case "RoomUtilizationMetricsEnabled":
13609			if value != nil {
13610				jtv, ok := value.(bool)
13611				if !ok {
13612					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
13613				}
13614				sv.RoomUtilizationMetricsEnabled = ptr.Bool(jtv)
13615			}
13616
13617		default:
13618			_, _ = key, value
13619
13620		}
13621	}
13622	*v = sv
13623	return nil
13624}
13625
13626func awsAwsjson11_deserializeDocumentMeetingSetting(v **types.MeetingSetting, value interface{}) error {
13627	if v == nil {
13628		return fmt.Errorf("unexpected nil of type %T", v)
13629	}
13630	if value == nil {
13631		return nil
13632	}
13633
13634	shape, ok := value.(map[string]interface{})
13635	if !ok {
13636		return fmt.Errorf("unexpected JSON type %v", value)
13637	}
13638
13639	var sv *types.MeetingSetting
13640	if *v == nil {
13641		sv = &types.MeetingSetting{}
13642	} else {
13643		sv = *v
13644	}
13645
13646	for key, value := range shape {
13647		switch key {
13648		case "RequirePin":
13649			if value != nil {
13650				jtv, ok := value.(string)
13651				if !ok {
13652					return fmt.Errorf("expected RequirePin to be of type string, got %T instead", value)
13653				}
13654				sv.RequirePin = types.RequirePin(jtv)
13655			}
13656
13657		default:
13658			_, _ = key, value
13659
13660		}
13661	}
13662	*v = sv
13663	return nil
13664}
13665
13666func awsAwsjson11_deserializeDocumentNameInUseException(v **types.NameInUseException, value interface{}) error {
13667	if v == nil {
13668		return fmt.Errorf("unexpected nil of type %T", v)
13669	}
13670	if value == nil {
13671		return nil
13672	}
13673
13674	shape, ok := value.(map[string]interface{})
13675	if !ok {
13676		return fmt.Errorf("unexpected JSON type %v", value)
13677	}
13678
13679	var sv *types.NameInUseException
13680	if *v == nil {
13681		sv = &types.NameInUseException{}
13682	} else {
13683		sv = *v
13684	}
13685
13686	for key, value := range shape {
13687		switch key {
13688		case "Message":
13689			if value != nil {
13690				jtv, ok := value.(string)
13691				if !ok {
13692					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
13693				}
13694				sv.Message = ptr.String(jtv)
13695			}
13696
13697		default:
13698			_, _ = key, value
13699
13700		}
13701	}
13702	*v = sv
13703	return nil
13704}
13705
13706func awsAwsjson11_deserializeDocumentNetworkProfile(v **types.NetworkProfile, value interface{}) error {
13707	if v == nil {
13708		return fmt.Errorf("unexpected nil of type %T", v)
13709	}
13710	if value == nil {
13711		return nil
13712	}
13713
13714	shape, ok := value.(map[string]interface{})
13715	if !ok {
13716		return fmt.Errorf("unexpected JSON type %v", value)
13717	}
13718
13719	var sv *types.NetworkProfile
13720	if *v == nil {
13721		sv = &types.NetworkProfile{}
13722	} else {
13723		sv = *v
13724	}
13725
13726	for key, value := range shape {
13727		switch key {
13728		case "CertificateAuthorityArn":
13729			if value != nil {
13730				jtv, ok := value.(string)
13731				if !ok {
13732					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13733				}
13734				sv.CertificateAuthorityArn = ptr.String(jtv)
13735			}
13736
13737		case "CurrentPassword":
13738			if value != nil {
13739				jtv, ok := value.(string)
13740				if !ok {
13741					return fmt.Errorf("expected CurrentWiFiPassword to be of type string, got %T instead", value)
13742				}
13743				sv.CurrentPassword = ptr.String(jtv)
13744			}
13745
13746		case "Description":
13747			if value != nil {
13748				jtv, ok := value.(string)
13749				if !ok {
13750					return fmt.Errorf("expected NetworkProfileDescription to be of type string, got %T instead", value)
13751				}
13752				sv.Description = ptr.String(jtv)
13753			}
13754
13755		case "EapMethod":
13756			if value != nil {
13757				jtv, ok := value.(string)
13758				if !ok {
13759					return fmt.Errorf("expected NetworkEapMethod to be of type string, got %T instead", value)
13760				}
13761				sv.EapMethod = types.NetworkEapMethod(jtv)
13762			}
13763
13764		case "NetworkProfileArn":
13765			if value != nil {
13766				jtv, ok := value.(string)
13767				if !ok {
13768					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13769				}
13770				sv.NetworkProfileArn = ptr.String(jtv)
13771			}
13772
13773		case "NetworkProfileName":
13774			if value != nil {
13775				jtv, ok := value.(string)
13776				if !ok {
13777					return fmt.Errorf("expected NetworkProfileName to be of type string, got %T instead", value)
13778				}
13779				sv.NetworkProfileName = ptr.String(jtv)
13780			}
13781
13782		case "NextPassword":
13783			if value != nil {
13784				jtv, ok := value.(string)
13785				if !ok {
13786					return fmt.Errorf("expected NextWiFiPassword to be of type string, got %T instead", value)
13787				}
13788				sv.NextPassword = ptr.String(jtv)
13789			}
13790
13791		case "SecurityType":
13792			if value != nil {
13793				jtv, ok := value.(string)
13794				if !ok {
13795					return fmt.Errorf("expected NetworkSecurityType to be of type string, got %T instead", value)
13796				}
13797				sv.SecurityType = types.NetworkSecurityType(jtv)
13798			}
13799
13800		case "Ssid":
13801			if value != nil {
13802				jtv, ok := value.(string)
13803				if !ok {
13804					return fmt.Errorf("expected NetworkSsid to be of type string, got %T instead", value)
13805				}
13806				sv.Ssid = ptr.String(jtv)
13807			}
13808
13809		case "TrustAnchors":
13810			if err := awsAwsjson11_deserializeDocumentTrustAnchorList(&sv.TrustAnchors, value); err != nil {
13811				return err
13812			}
13813
13814		default:
13815			_, _ = key, value
13816
13817		}
13818	}
13819	*v = sv
13820	return nil
13821}
13822
13823func awsAwsjson11_deserializeDocumentNetworkProfileData(v **types.NetworkProfileData, value interface{}) error {
13824	if v == nil {
13825		return fmt.Errorf("unexpected nil of type %T", v)
13826	}
13827	if value == nil {
13828		return nil
13829	}
13830
13831	shape, ok := value.(map[string]interface{})
13832	if !ok {
13833		return fmt.Errorf("unexpected JSON type %v", value)
13834	}
13835
13836	var sv *types.NetworkProfileData
13837	if *v == nil {
13838		sv = &types.NetworkProfileData{}
13839	} else {
13840		sv = *v
13841	}
13842
13843	for key, value := range shape {
13844		switch key {
13845		case "CertificateAuthorityArn":
13846			if value != nil {
13847				jtv, ok := value.(string)
13848				if !ok {
13849					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13850				}
13851				sv.CertificateAuthorityArn = ptr.String(jtv)
13852			}
13853
13854		case "Description":
13855			if value != nil {
13856				jtv, ok := value.(string)
13857				if !ok {
13858					return fmt.Errorf("expected NetworkProfileDescription to be of type string, got %T instead", value)
13859				}
13860				sv.Description = ptr.String(jtv)
13861			}
13862
13863		case "EapMethod":
13864			if value != nil {
13865				jtv, ok := value.(string)
13866				if !ok {
13867					return fmt.Errorf("expected NetworkEapMethod to be of type string, got %T instead", value)
13868				}
13869				sv.EapMethod = types.NetworkEapMethod(jtv)
13870			}
13871
13872		case "NetworkProfileArn":
13873			if value != nil {
13874				jtv, ok := value.(string)
13875				if !ok {
13876					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
13877				}
13878				sv.NetworkProfileArn = ptr.String(jtv)
13879			}
13880
13881		case "NetworkProfileName":
13882			if value != nil {
13883				jtv, ok := value.(string)
13884				if !ok {
13885					return fmt.Errorf("expected NetworkProfileName to be of type string, got %T instead", value)
13886				}
13887				sv.NetworkProfileName = ptr.String(jtv)
13888			}
13889
13890		case "SecurityType":
13891			if value != nil {
13892				jtv, ok := value.(string)
13893				if !ok {
13894					return fmt.Errorf("expected NetworkSecurityType to be of type string, got %T instead", value)
13895				}
13896				sv.SecurityType = types.NetworkSecurityType(jtv)
13897			}
13898
13899		case "Ssid":
13900			if value != nil {
13901				jtv, ok := value.(string)
13902				if !ok {
13903					return fmt.Errorf("expected NetworkSsid to be of type string, got %T instead", value)
13904				}
13905				sv.Ssid = ptr.String(jtv)
13906			}
13907
13908		default:
13909			_, _ = key, value
13910
13911		}
13912	}
13913	*v = sv
13914	return nil
13915}
13916
13917func awsAwsjson11_deserializeDocumentNetworkProfileDataList(v *[]types.NetworkProfileData, value interface{}) error {
13918	if v == nil {
13919		return fmt.Errorf("unexpected nil of type %T", v)
13920	}
13921	if value == nil {
13922		return nil
13923	}
13924
13925	shape, ok := value.([]interface{})
13926	if !ok {
13927		return fmt.Errorf("unexpected JSON type %v", value)
13928	}
13929
13930	var cv []types.NetworkProfileData
13931	if *v == nil {
13932		cv = []types.NetworkProfileData{}
13933	} else {
13934		cv = *v
13935	}
13936
13937	for _, value := range shape {
13938		var col types.NetworkProfileData
13939		destAddr := &col
13940		if err := awsAwsjson11_deserializeDocumentNetworkProfileData(&destAddr, value); err != nil {
13941			return err
13942		}
13943		col = *destAddr
13944		cv = append(cv, col)
13945
13946	}
13947	*v = cv
13948	return nil
13949}
13950
13951func awsAwsjson11_deserializeDocumentNewInThisVersionBulletPoints(v *[]string, value interface{}) error {
13952	if v == nil {
13953		return fmt.Errorf("unexpected nil of type %T", v)
13954	}
13955	if value == nil {
13956		return nil
13957	}
13958
13959	shape, ok := value.([]interface{})
13960	if !ok {
13961		return fmt.Errorf("unexpected JSON type %v", value)
13962	}
13963
13964	var cv []string
13965	if *v == nil {
13966		cv = []string{}
13967	} else {
13968		cv = *v
13969	}
13970
13971	for _, value := range shape {
13972		var col string
13973		if value != nil {
13974			jtv, ok := value.(string)
13975			if !ok {
13976				return fmt.Errorf("expected BulletPoint to be of type string, got %T instead", value)
13977			}
13978			col = jtv
13979		}
13980		cv = append(cv, col)
13981
13982	}
13983	*v = cv
13984	return nil
13985}
13986
13987func awsAwsjson11_deserializeDocumentNotFoundException(v **types.NotFoundException, value interface{}) error {
13988	if v == nil {
13989		return fmt.Errorf("unexpected nil of type %T", v)
13990	}
13991	if value == nil {
13992		return nil
13993	}
13994
13995	shape, ok := value.(map[string]interface{})
13996	if !ok {
13997		return fmt.Errorf("unexpected JSON type %v", value)
13998	}
13999
14000	var sv *types.NotFoundException
14001	if *v == nil {
14002		sv = &types.NotFoundException{}
14003	} else {
14004		sv = *v
14005	}
14006
14007	for key, value := range shape {
14008		switch key {
14009		case "Message":
14010			if value != nil {
14011				jtv, ok := value.(string)
14012				if !ok {
14013					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
14014				}
14015				sv.Message = ptr.String(jtv)
14016			}
14017
14018		default:
14019			_, _ = key, value
14020
14021		}
14022	}
14023	*v = sv
14024	return nil
14025}
14026
14027func awsAwsjson11_deserializeDocumentPhoneNumber(v **types.PhoneNumber, value interface{}) error {
14028	if v == nil {
14029		return fmt.Errorf("unexpected nil of type %T", v)
14030	}
14031	if value == nil {
14032		return nil
14033	}
14034
14035	shape, ok := value.(map[string]interface{})
14036	if !ok {
14037		return fmt.Errorf("unexpected JSON type %v", value)
14038	}
14039
14040	var sv *types.PhoneNumber
14041	if *v == nil {
14042		sv = &types.PhoneNumber{}
14043	} else {
14044		sv = *v
14045	}
14046
14047	for key, value := range shape {
14048		switch key {
14049		case "Number":
14050			if value != nil {
14051				jtv, ok := value.(string)
14052				if !ok {
14053					return fmt.Errorf("expected RawPhoneNumber to be of type string, got %T instead", value)
14054				}
14055				sv.Number = ptr.String(jtv)
14056			}
14057
14058		case "Type":
14059			if value != nil {
14060				jtv, ok := value.(string)
14061				if !ok {
14062					return fmt.Errorf("expected PhoneNumberType to be of type string, got %T instead", value)
14063				}
14064				sv.Type = types.PhoneNumberType(jtv)
14065			}
14066
14067		default:
14068			_, _ = key, value
14069
14070		}
14071	}
14072	*v = sv
14073	return nil
14074}
14075
14076func awsAwsjson11_deserializeDocumentPhoneNumberList(v *[]types.PhoneNumber, value interface{}) error {
14077	if v == nil {
14078		return fmt.Errorf("unexpected nil of type %T", v)
14079	}
14080	if value == nil {
14081		return nil
14082	}
14083
14084	shape, ok := value.([]interface{})
14085	if !ok {
14086		return fmt.Errorf("unexpected JSON type %v", value)
14087	}
14088
14089	var cv []types.PhoneNumber
14090	if *v == nil {
14091		cv = []types.PhoneNumber{}
14092	} else {
14093		cv = *v
14094	}
14095
14096	for _, value := range shape {
14097		var col types.PhoneNumber
14098		destAddr := &col
14099		if err := awsAwsjson11_deserializeDocumentPhoneNumber(&destAddr, value); err != nil {
14100			return err
14101		}
14102		col = *destAddr
14103		cv = append(cv, col)
14104
14105	}
14106	*v = cv
14107	return nil
14108}
14109
14110func awsAwsjson11_deserializeDocumentProfile(v **types.Profile, value interface{}) error {
14111	if v == nil {
14112		return fmt.Errorf("unexpected nil of type %T", v)
14113	}
14114	if value == nil {
14115		return nil
14116	}
14117
14118	shape, ok := value.(map[string]interface{})
14119	if !ok {
14120		return fmt.Errorf("unexpected JSON type %v", value)
14121	}
14122
14123	var sv *types.Profile
14124	if *v == nil {
14125		sv = &types.Profile{}
14126	} else {
14127		sv = *v
14128	}
14129
14130	for key, value := range shape {
14131		switch key {
14132		case "Address":
14133			if value != nil {
14134				jtv, ok := value.(string)
14135				if !ok {
14136					return fmt.Errorf("expected Address to be of type string, got %T instead", value)
14137				}
14138				sv.Address = ptr.String(jtv)
14139			}
14140
14141		case "AddressBookArn":
14142			if value != nil {
14143				jtv, ok := value.(string)
14144				if !ok {
14145					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14146				}
14147				sv.AddressBookArn = ptr.String(jtv)
14148			}
14149
14150		case "DataRetentionOptIn":
14151			if value != nil {
14152				jtv, ok := value.(bool)
14153				if !ok {
14154					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
14155				}
14156				sv.DataRetentionOptIn = ptr.Bool(jtv)
14157			}
14158
14159		case "DistanceUnit":
14160			if value != nil {
14161				jtv, ok := value.(string)
14162				if !ok {
14163					return fmt.Errorf("expected DistanceUnit to be of type string, got %T instead", value)
14164				}
14165				sv.DistanceUnit = types.DistanceUnit(jtv)
14166			}
14167
14168		case "IsDefault":
14169			if value != nil {
14170				jtv, ok := value.(bool)
14171				if !ok {
14172					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
14173				}
14174				sv.IsDefault = ptr.Bool(jtv)
14175			}
14176
14177		case "Locale":
14178			if value != nil {
14179				jtv, ok := value.(string)
14180				if !ok {
14181					return fmt.Errorf("expected DeviceLocale to be of type string, got %T instead", value)
14182				}
14183				sv.Locale = ptr.String(jtv)
14184			}
14185
14186		case "MaxVolumeLimit":
14187			if value != nil {
14188				jtv, ok := value.(json.Number)
14189				if !ok {
14190					return fmt.Errorf("expected MaxVolumeLimit to be json.Number, got %T instead", value)
14191				}
14192				i64, err := jtv.Int64()
14193				if err != nil {
14194					return err
14195				}
14196				sv.MaxVolumeLimit = ptr.Int32(int32(i64))
14197			}
14198
14199		case "MeetingRoomConfiguration":
14200			if err := awsAwsjson11_deserializeDocumentMeetingRoomConfiguration(&sv.MeetingRoomConfiguration, value); err != nil {
14201				return err
14202			}
14203
14204		case "ProfileArn":
14205			if value != nil {
14206				jtv, ok := value.(string)
14207				if !ok {
14208					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14209				}
14210				sv.ProfileArn = ptr.String(jtv)
14211			}
14212
14213		case "ProfileName":
14214			if value != nil {
14215				jtv, ok := value.(string)
14216				if !ok {
14217					return fmt.Errorf("expected ProfileName to be of type string, got %T instead", value)
14218				}
14219				sv.ProfileName = ptr.String(jtv)
14220			}
14221
14222		case "PSTNEnabled":
14223			if value != nil {
14224				jtv, ok := value.(bool)
14225				if !ok {
14226					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
14227				}
14228				sv.PSTNEnabled = ptr.Bool(jtv)
14229			}
14230
14231		case "SetupModeDisabled":
14232			if value != nil {
14233				jtv, ok := value.(bool)
14234				if !ok {
14235					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
14236				}
14237				sv.SetupModeDisabled = ptr.Bool(jtv)
14238			}
14239
14240		case "TemperatureUnit":
14241			if value != nil {
14242				jtv, ok := value.(string)
14243				if !ok {
14244					return fmt.Errorf("expected TemperatureUnit to be of type string, got %T instead", value)
14245				}
14246				sv.TemperatureUnit = types.TemperatureUnit(jtv)
14247			}
14248
14249		case "Timezone":
14250			if value != nil {
14251				jtv, ok := value.(string)
14252				if !ok {
14253					return fmt.Errorf("expected Timezone to be of type string, got %T instead", value)
14254				}
14255				sv.Timezone = ptr.String(jtv)
14256			}
14257
14258		case "WakeWord":
14259			if value != nil {
14260				jtv, ok := value.(string)
14261				if !ok {
14262					return fmt.Errorf("expected WakeWord to be of type string, got %T instead", value)
14263				}
14264				sv.WakeWord = types.WakeWord(jtv)
14265			}
14266
14267		default:
14268			_, _ = key, value
14269
14270		}
14271	}
14272	*v = sv
14273	return nil
14274}
14275
14276func awsAwsjson11_deserializeDocumentProfileData(v **types.ProfileData, value interface{}) error {
14277	if v == nil {
14278		return fmt.Errorf("unexpected nil of type %T", v)
14279	}
14280	if value == nil {
14281		return nil
14282	}
14283
14284	shape, ok := value.(map[string]interface{})
14285	if !ok {
14286		return fmt.Errorf("unexpected JSON type %v", value)
14287	}
14288
14289	var sv *types.ProfileData
14290	if *v == nil {
14291		sv = &types.ProfileData{}
14292	} else {
14293		sv = *v
14294	}
14295
14296	for key, value := range shape {
14297		switch key {
14298		case "Address":
14299			if value != nil {
14300				jtv, ok := value.(string)
14301				if !ok {
14302					return fmt.Errorf("expected Address to be of type string, got %T instead", value)
14303				}
14304				sv.Address = ptr.String(jtv)
14305			}
14306
14307		case "DistanceUnit":
14308			if value != nil {
14309				jtv, ok := value.(string)
14310				if !ok {
14311					return fmt.Errorf("expected DistanceUnit to be of type string, got %T instead", value)
14312				}
14313				sv.DistanceUnit = types.DistanceUnit(jtv)
14314			}
14315
14316		case "IsDefault":
14317			if value != nil {
14318				jtv, ok := value.(bool)
14319				if !ok {
14320					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
14321				}
14322				sv.IsDefault = ptr.Bool(jtv)
14323			}
14324
14325		case "Locale":
14326			if value != nil {
14327				jtv, ok := value.(string)
14328				if !ok {
14329					return fmt.Errorf("expected DeviceLocale to be of type string, got %T instead", value)
14330				}
14331				sv.Locale = ptr.String(jtv)
14332			}
14333
14334		case "ProfileArn":
14335			if value != nil {
14336				jtv, ok := value.(string)
14337				if !ok {
14338					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14339				}
14340				sv.ProfileArn = ptr.String(jtv)
14341			}
14342
14343		case "ProfileName":
14344			if value != nil {
14345				jtv, ok := value.(string)
14346				if !ok {
14347					return fmt.Errorf("expected ProfileName to be of type string, got %T instead", value)
14348				}
14349				sv.ProfileName = ptr.String(jtv)
14350			}
14351
14352		case "TemperatureUnit":
14353			if value != nil {
14354				jtv, ok := value.(string)
14355				if !ok {
14356					return fmt.Errorf("expected TemperatureUnit to be of type string, got %T instead", value)
14357				}
14358				sv.TemperatureUnit = types.TemperatureUnit(jtv)
14359			}
14360
14361		case "Timezone":
14362			if value != nil {
14363				jtv, ok := value.(string)
14364				if !ok {
14365					return fmt.Errorf("expected Timezone to be of type string, got %T instead", value)
14366				}
14367				sv.Timezone = ptr.String(jtv)
14368			}
14369
14370		case "WakeWord":
14371			if value != nil {
14372				jtv, ok := value.(string)
14373				if !ok {
14374					return fmt.Errorf("expected WakeWord to be of type string, got %T instead", value)
14375				}
14376				sv.WakeWord = types.WakeWord(jtv)
14377			}
14378
14379		default:
14380			_, _ = key, value
14381
14382		}
14383	}
14384	*v = sv
14385	return nil
14386}
14387
14388func awsAwsjson11_deserializeDocumentProfileDataList(v *[]types.ProfileData, value interface{}) error {
14389	if v == nil {
14390		return fmt.Errorf("unexpected nil of type %T", v)
14391	}
14392	if value == nil {
14393		return nil
14394	}
14395
14396	shape, ok := value.([]interface{})
14397	if !ok {
14398		return fmt.Errorf("unexpected JSON type %v", value)
14399	}
14400
14401	var cv []types.ProfileData
14402	if *v == nil {
14403		cv = []types.ProfileData{}
14404	} else {
14405		cv = *v
14406	}
14407
14408	for _, value := range shape {
14409		var col types.ProfileData
14410		destAddr := &col
14411		if err := awsAwsjson11_deserializeDocumentProfileData(&destAddr, value); err != nil {
14412			return err
14413		}
14414		col = *destAddr
14415		cv = append(cv, col)
14416
14417	}
14418	*v = cv
14419	return nil
14420}
14421
14422func awsAwsjson11_deserializeDocumentPSTNDialIn(v **types.PSTNDialIn, value interface{}) error {
14423	if v == nil {
14424		return fmt.Errorf("unexpected nil of type %T", v)
14425	}
14426	if value == nil {
14427		return nil
14428	}
14429
14430	shape, ok := value.(map[string]interface{})
14431	if !ok {
14432		return fmt.Errorf("unexpected JSON type %v", value)
14433	}
14434
14435	var sv *types.PSTNDialIn
14436	if *v == nil {
14437		sv = &types.PSTNDialIn{}
14438	} else {
14439		sv = *v
14440	}
14441
14442	for key, value := range shape {
14443		switch key {
14444		case "CountryCode":
14445			if value != nil {
14446				jtv, ok := value.(string)
14447				if !ok {
14448					return fmt.Errorf("expected CountryCode to be of type string, got %T instead", value)
14449				}
14450				sv.CountryCode = ptr.String(jtv)
14451			}
14452
14453		case "OneClickIdDelay":
14454			if value != nil {
14455				jtv, ok := value.(string)
14456				if !ok {
14457					return fmt.Errorf("expected OneClickIdDelay to be of type string, got %T instead", value)
14458				}
14459				sv.OneClickIdDelay = ptr.String(jtv)
14460			}
14461
14462		case "OneClickPinDelay":
14463			if value != nil {
14464				jtv, ok := value.(string)
14465				if !ok {
14466					return fmt.Errorf("expected OneClickPinDelay to be of type string, got %T instead", value)
14467				}
14468				sv.OneClickPinDelay = ptr.String(jtv)
14469			}
14470
14471		case "PhoneNumber":
14472			if value != nil {
14473				jtv, ok := value.(string)
14474				if !ok {
14475					return fmt.Errorf("expected OutboundPhoneNumber to be of type string, got %T instead", value)
14476				}
14477				sv.PhoneNumber = ptr.String(jtv)
14478			}
14479
14480		default:
14481			_, _ = key, value
14482
14483		}
14484	}
14485	*v = sv
14486	return nil
14487}
14488
14489func awsAwsjson11_deserializeDocumentRequireCheckIn(v **types.RequireCheckIn, value interface{}) error {
14490	if v == nil {
14491		return fmt.Errorf("unexpected nil of type %T", v)
14492	}
14493	if value == nil {
14494		return nil
14495	}
14496
14497	shape, ok := value.(map[string]interface{})
14498	if !ok {
14499		return fmt.Errorf("unexpected JSON type %v", value)
14500	}
14501
14502	var sv *types.RequireCheckIn
14503	if *v == nil {
14504		sv = &types.RequireCheckIn{}
14505	} else {
14506		sv = *v
14507	}
14508
14509	for key, value := range shape {
14510		switch key {
14511		case "Enabled":
14512			if value != nil {
14513				jtv, ok := value.(bool)
14514				if !ok {
14515					return fmt.Errorf("expected Boolean to be of type *bool, got %T instead", value)
14516				}
14517				sv.Enabled = ptr.Bool(jtv)
14518			}
14519
14520		case "ReleaseAfterMinutes":
14521			if value != nil {
14522				jtv, ok := value.(json.Number)
14523				if !ok {
14524					return fmt.Errorf("expected Minutes to be json.Number, got %T instead", value)
14525				}
14526				i64, err := jtv.Int64()
14527				if err != nil {
14528					return err
14529				}
14530				sv.ReleaseAfterMinutes = ptr.Int32(int32(i64))
14531			}
14532
14533		default:
14534			_, _ = key, value
14535
14536		}
14537	}
14538	*v = sv
14539	return nil
14540}
14541
14542func awsAwsjson11_deserializeDocumentResourceAssociatedException(v **types.ResourceAssociatedException, value interface{}) error {
14543	if v == nil {
14544		return fmt.Errorf("unexpected nil of type %T", v)
14545	}
14546	if value == nil {
14547		return nil
14548	}
14549
14550	shape, ok := value.(map[string]interface{})
14551	if !ok {
14552		return fmt.Errorf("unexpected JSON type %v", value)
14553	}
14554
14555	var sv *types.ResourceAssociatedException
14556	if *v == nil {
14557		sv = &types.ResourceAssociatedException{}
14558	} else {
14559		sv = *v
14560	}
14561
14562	for key, value := range shape {
14563		switch key {
14564		case "Message":
14565			if value != nil {
14566				jtv, ok := value.(string)
14567				if !ok {
14568					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
14569				}
14570				sv.Message = ptr.String(jtv)
14571			}
14572
14573		default:
14574			_, _ = key, value
14575
14576		}
14577	}
14578	*v = sv
14579	return nil
14580}
14581
14582func awsAwsjson11_deserializeDocumentResourceInUseException(v **types.ResourceInUseException, value interface{}) error {
14583	if v == nil {
14584		return fmt.Errorf("unexpected nil of type %T", v)
14585	}
14586	if value == nil {
14587		return nil
14588	}
14589
14590	shape, ok := value.(map[string]interface{})
14591	if !ok {
14592		return fmt.Errorf("unexpected JSON type %v", value)
14593	}
14594
14595	var sv *types.ResourceInUseException
14596	if *v == nil {
14597		sv = &types.ResourceInUseException{}
14598	} else {
14599		sv = *v
14600	}
14601
14602	for key, value := range shape {
14603		switch key {
14604		case "ClientRequestToken":
14605			if value != nil {
14606				jtv, ok := value.(string)
14607				if !ok {
14608					return fmt.Errorf("expected ClientRequestToken to be of type string, got %T instead", value)
14609				}
14610				sv.ClientRequestToken = ptr.String(jtv)
14611			}
14612
14613		case "Message":
14614			if value != nil {
14615				jtv, ok := value.(string)
14616				if !ok {
14617					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
14618				}
14619				sv.Message = ptr.String(jtv)
14620			}
14621
14622		default:
14623			_, _ = key, value
14624
14625		}
14626	}
14627	*v = sv
14628	return nil
14629}
14630
14631func awsAwsjson11_deserializeDocumentReviews(v *map[string]string, value interface{}) error {
14632	if v == nil {
14633		return fmt.Errorf("unexpected nil of type %T", v)
14634	}
14635	if value == nil {
14636		return nil
14637	}
14638
14639	shape, ok := value.(map[string]interface{})
14640	if !ok {
14641		return fmt.Errorf("unexpected JSON type %v", value)
14642	}
14643
14644	var mv map[string]string
14645	if *v == nil {
14646		mv = map[string]string{}
14647	} else {
14648		mv = *v
14649	}
14650
14651	for key, value := range shape {
14652		var parsedVal string
14653		if value != nil {
14654			jtv, ok := value.(string)
14655			if !ok {
14656				return fmt.Errorf("expected ReviewValue to be of type string, got %T instead", value)
14657			}
14658			parsedVal = jtv
14659		}
14660		mv[key] = parsedVal
14661
14662	}
14663	*v = mv
14664	return nil
14665}
14666
14667func awsAwsjson11_deserializeDocumentRoom(v **types.Room, value interface{}) error {
14668	if v == nil {
14669		return fmt.Errorf("unexpected nil of type %T", v)
14670	}
14671	if value == nil {
14672		return nil
14673	}
14674
14675	shape, ok := value.(map[string]interface{})
14676	if !ok {
14677		return fmt.Errorf("unexpected JSON type %v", value)
14678	}
14679
14680	var sv *types.Room
14681	if *v == nil {
14682		sv = &types.Room{}
14683	} else {
14684		sv = *v
14685	}
14686
14687	for key, value := range shape {
14688		switch key {
14689		case "Description":
14690			if value != nil {
14691				jtv, ok := value.(string)
14692				if !ok {
14693					return fmt.Errorf("expected RoomDescription to be of type string, got %T instead", value)
14694				}
14695				sv.Description = ptr.String(jtv)
14696			}
14697
14698		case "ProfileArn":
14699			if value != nil {
14700				jtv, ok := value.(string)
14701				if !ok {
14702					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14703				}
14704				sv.ProfileArn = ptr.String(jtv)
14705			}
14706
14707		case "ProviderCalendarId":
14708			if value != nil {
14709				jtv, ok := value.(string)
14710				if !ok {
14711					return fmt.Errorf("expected ProviderCalendarId to be of type string, got %T instead", value)
14712				}
14713				sv.ProviderCalendarId = ptr.String(jtv)
14714			}
14715
14716		case "RoomArn":
14717			if value != nil {
14718				jtv, ok := value.(string)
14719				if !ok {
14720					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14721				}
14722				sv.RoomArn = ptr.String(jtv)
14723			}
14724
14725		case "RoomName":
14726			if value != nil {
14727				jtv, ok := value.(string)
14728				if !ok {
14729					return fmt.Errorf("expected RoomName to be of type string, got %T instead", value)
14730				}
14731				sv.RoomName = ptr.String(jtv)
14732			}
14733
14734		default:
14735			_, _ = key, value
14736
14737		}
14738	}
14739	*v = sv
14740	return nil
14741}
14742
14743func awsAwsjson11_deserializeDocumentRoomData(v **types.RoomData, value interface{}) error {
14744	if v == nil {
14745		return fmt.Errorf("unexpected nil of type %T", v)
14746	}
14747	if value == nil {
14748		return nil
14749	}
14750
14751	shape, ok := value.(map[string]interface{})
14752	if !ok {
14753		return fmt.Errorf("unexpected JSON type %v", value)
14754	}
14755
14756	var sv *types.RoomData
14757	if *v == nil {
14758		sv = &types.RoomData{}
14759	} else {
14760		sv = *v
14761	}
14762
14763	for key, value := range shape {
14764		switch key {
14765		case "Description":
14766			if value != nil {
14767				jtv, ok := value.(string)
14768				if !ok {
14769					return fmt.Errorf("expected RoomDescription to be of type string, got %T instead", value)
14770				}
14771				sv.Description = ptr.String(jtv)
14772			}
14773
14774		case "ProfileArn":
14775			if value != nil {
14776				jtv, ok := value.(string)
14777				if !ok {
14778					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14779				}
14780				sv.ProfileArn = ptr.String(jtv)
14781			}
14782
14783		case "ProfileName":
14784			if value != nil {
14785				jtv, ok := value.(string)
14786				if !ok {
14787					return fmt.Errorf("expected ProfileName to be of type string, got %T instead", value)
14788				}
14789				sv.ProfileName = ptr.String(jtv)
14790			}
14791
14792		case "ProviderCalendarId":
14793			if value != nil {
14794				jtv, ok := value.(string)
14795				if !ok {
14796					return fmt.Errorf("expected ProviderCalendarId to be of type string, got %T instead", value)
14797				}
14798				sv.ProviderCalendarId = ptr.String(jtv)
14799			}
14800
14801		case "RoomArn":
14802			if value != nil {
14803				jtv, ok := value.(string)
14804				if !ok {
14805					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
14806				}
14807				sv.RoomArn = ptr.String(jtv)
14808			}
14809
14810		case "RoomName":
14811			if value != nil {
14812				jtv, ok := value.(string)
14813				if !ok {
14814					return fmt.Errorf("expected RoomName to be of type string, got %T instead", value)
14815				}
14816				sv.RoomName = ptr.String(jtv)
14817			}
14818
14819		default:
14820			_, _ = key, value
14821
14822		}
14823	}
14824	*v = sv
14825	return nil
14826}
14827
14828func awsAwsjson11_deserializeDocumentRoomDataList(v *[]types.RoomData, value interface{}) error {
14829	if v == nil {
14830		return fmt.Errorf("unexpected nil of type %T", v)
14831	}
14832	if value == nil {
14833		return nil
14834	}
14835
14836	shape, ok := value.([]interface{})
14837	if !ok {
14838		return fmt.Errorf("unexpected JSON type %v", value)
14839	}
14840
14841	var cv []types.RoomData
14842	if *v == nil {
14843		cv = []types.RoomData{}
14844	} else {
14845		cv = *v
14846	}
14847
14848	for _, value := range shape {
14849		var col types.RoomData
14850		destAddr := &col
14851		if err := awsAwsjson11_deserializeDocumentRoomData(&destAddr, value); err != nil {
14852			return err
14853		}
14854		col = *destAddr
14855		cv = append(cv, col)
14856
14857	}
14858	*v = cv
14859	return nil
14860}
14861
14862func awsAwsjson11_deserializeDocumentRoomSkillParameter(v **types.RoomSkillParameter, value interface{}) error {
14863	if v == nil {
14864		return fmt.Errorf("unexpected nil of type %T", v)
14865	}
14866	if value == nil {
14867		return nil
14868	}
14869
14870	shape, ok := value.(map[string]interface{})
14871	if !ok {
14872		return fmt.Errorf("unexpected JSON type %v", value)
14873	}
14874
14875	var sv *types.RoomSkillParameter
14876	if *v == nil {
14877		sv = &types.RoomSkillParameter{}
14878	} else {
14879		sv = *v
14880	}
14881
14882	for key, value := range shape {
14883		switch key {
14884		case "ParameterKey":
14885			if value != nil {
14886				jtv, ok := value.(string)
14887				if !ok {
14888					return fmt.Errorf("expected RoomSkillParameterKey to be of type string, got %T instead", value)
14889				}
14890				sv.ParameterKey = ptr.String(jtv)
14891			}
14892
14893		case "ParameterValue":
14894			if value != nil {
14895				jtv, ok := value.(string)
14896				if !ok {
14897					return fmt.Errorf("expected RoomSkillParameterValue to be of type string, got %T instead", value)
14898				}
14899				sv.ParameterValue = ptr.String(jtv)
14900			}
14901
14902		default:
14903			_, _ = key, value
14904
14905		}
14906	}
14907	*v = sv
14908	return nil
14909}
14910
14911func awsAwsjson11_deserializeDocumentRoomSkillParameters(v *[]types.RoomSkillParameter, value interface{}) error {
14912	if v == nil {
14913		return fmt.Errorf("unexpected nil of type %T", v)
14914	}
14915	if value == nil {
14916		return nil
14917	}
14918
14919	shape, ok := value.([]interface{})
14920	if !ok {
14921		return fmt.Errorf("unexpected JSON type %v", value)
14922	}
14923
14924	var cv []types.RoomSkillParameter
14925	if *v == nil {
14926		cv = []types.RoomSkillParameter{}
14927	} else {
14928		cv = *v
14929	}
14930
14931	for _, value := range shape {
14932		var col types.RoomSkillParameter
14933		destAddr := &col
14934		if err := awsAwsjson11_deserializeDocumentRoomSkillParameter(&destAddr, value); err != nil {
14935			return err
14936		}
14937		col = *destAddr
14938		cv = append(cv, col)
14939
14940	}
14941	*v = cv
14942	return nil
14943}
14944
14945func awsAwsjson11_deserializeDocumentSampleUtterances(v *[]string, value interface{}) error {
14946	if v == nil {
14947		return fmt.Errorf("unexpected nil of type %T", v)
14948	}
14949	if value == nil {
14950		return nil
14951	}
14952
14953	shape, ok := value.([]interface{})
14954	if !ok {
14955		return fmt.Errorf("unexpected JSON type %v", value)
14956	}
14957
14958	var cv []string
14959	if *v == nil {
14960		cv = []string{}
14961	} else {
14962		cv = *v
14963	}
14964
14965	for _, value := range shape {
14966		var col string
14967		if value != nil {
14968			jtv, ok := value.(string)
14969			if !ok {
14970				return fmt.Errorf("expected Utterance to be of type string, got %T instead", value)
14971			}
14972			col = jtv
14973		}
14974		cv = append(cv, col)
14975
14976	}
14977	*v = cv
14978	return nil
14979}
14980
14981func awsAwsjson11_deserializeDocumentShortSkillIdList(v *[]string, value interface{}) error {
14982	if v == nil {
14983		return fmt.Errorf("unexpected nil of type %T", v)
14984	}
14985	if value == nil {
14986		return nil
14987	}
14988
14989	shape, ok := value.([]interface{})
14990	if !ok {
14991		return fmt.Errorf("unexpected JSON type %v", value)
14992	}
14993
14994	var cv []string
14995	if *v == nil {
14996		cv = []string{}
14997	} else {
14998		cv = *v
14999	}
15000
15001	for _, value := range shape {
15002		var col string
15003		if value != nil {
15004			jtv, ok := value.(string)
15005			if !ok {
15006				return fmt.Errorf("expected SkillId to be of type string, got %T instead", value)
15007			}
15008			col = jtv
15009		}
15010		cv = append(cv, col)
15011
15012	}
15013	*v = cv
15014	return nil
15015}
15016
15017func awsAwsjson11_deserializeDocumentSipAddress(v **types.SipAddress, value interface{}) error {
15018	if v == nil {
15019		return fmt.Errorf("unexpected nil of type %T", v)
15020	}
15021	if value == nil {
15022		return nil
15023	}
15024
15025	shape, ok := value.(map[string]interface{})
15026	if !ok {
15027		return fmt.Errorf("unexpected JSON type %v", value)
15028	}
15029
15030	var sv *types.SipAddress
15031	if *v == nil {
15032		sv = &types.SipAddress{}
15033	} else {
15034		sv = *v
15035	}
15036
15037	for key, value := range shape {
15038		switch key {
15039		case "Type":
15040			if value != nil {
15041				jtv, ok := value.(string)
15042				if !ok {
15043					return fmt.Errorf("expected SipType to be of type string, got %T instead", value)
15044				}
15045				sv.Type = types.SipType(jtv)
15046			}
15047
15048		case "Uri":
15049			if value != nil {
15050				jtv, ok := value.(string)
15051				if !ok {
15052					return fmt.Errorf("expected SipUri to be of type string, got %T instead", value)
15053				}
15054				sv.Uri = ptr.String(jtv)
15055			}
15056
15057		default:
15058			_, _ = key, value
15059
15060		}
15061	}
15062	*v = sv
15063	return nil
15064}
15065
15066func awsAwsjson11_deserializeDocumentSipAddressList(v *[]types.SipAddress, value interface{}) error {
15067	if v == nil {
15068		return fmt.Errorf("unexpected nil of type %T", v)
15069	}
15070	if value == nil {
15071		return nil
15072	}
15073
15074	shape, ok := value.([]interface{})
15075	if !ok {
15076		return fmt.Errorf("unexpected JSON type %v", value)
15077	}
15078
15079	var cv []types.SipAddress
15080	if *v == nil {
15081		cv = []types.SipAddress{}
15082	} else {
15083		cv = *v
15084	}
15085
15086	for _, value := range shape {
15087		var col types.SipAddress
15088		destAddr := &col
15089		if err := awsAwsjson11_deserializeDocumentSipAddress(&destAddr, value); err != nil {
15090			return err
15091		}
15092		col = *destAddr
15093		cv = append(cv, col)
15094
15095	}
15096	*v = cv
15097	return nil
15098}
15099
15100func awsAwsjson11_deserializeDocumentSkillDetails(v **types.SkillDetails, value interface{}) error {
15101	if v == nil {
15102		return fmt.Errorf("unexpected nil of type %T", v)
15103	}
15104	if value == nil {
15105		return nil
15106	}
15107
15108	shape, ok := value.(map[string]interface{})
15109	if !ok {
15110		return fmt.Errorf("unexpected JSON type %v", value)
15111	}
15112
15113	var sv *types.SkillDetails
15114	if *v == nil {
15115		sv = &types.SkillDetails{}
15116	} else {
15117		sv = *v
15118	}
15119
15120	for key, value := range shape {
15121		switch key {
15122		case "BulletPoints":
15123			if err := awsAwsjson11_deserializeDocumentBulletPoints(&sv.BulletPoints, value); err != nil {
15124				return err
15125			}
15126
15127		case "DeveloperInfo":
15128			if err := awsAwsjson11_deserializeDocumentDeveloperInfo(&sv.DeveloperInfo, value); err != nil {
15129				return err
15130			}
15131
15132		case "EndUserLicenseAgreement":
15133			if value != nil {
15134				jtv, ok := value.(string)
15135				if !ok {
15136					return fmt.Errorf("expected EndUserLicenseAgreement to be of type string, got %T instead", value)
15137				}
15138				sv.EndUserLicenseAgreement = ptr.String(jtv)
15139			}
15140
15141		case "GenericKeywords":
15142			if err := awsAwsjson11_deserializeDocumentGenericKeywords(&sv.GenericKeywords, value); err != nil {
15143				return err
15144			}
15145
15146		case "InvocationPhrase":
15147			if value != nil {
15148				jtv, ok := value.(string)
15149				if !ok {
15150					return fmt.Errorf("expected InvocationPhrase to be of type string, got %T instead", value)
15151				}
15152				sv.InvocationPhrase = ptr.String(jtv)
15153			}
15154
15155		case "NewInThisVersionBulletPoints":
15156			if err := awsAwsjson11_deserializeDocumentNewInThisVersionBulletPoints(&sv.NewInThisVersionBulletPoints, value); err != nil {
15157				return err
15158			}
15159
15160		case "ProductDescription":
15161			if value != nil {
15162				jtv, ok := value.(string)
15163				if !ok {
15164					return fmt.Errorf("expected ProductDescription to be of type string, got %T instead", value)
15165				}
15166				sv.ProductDescription = ptr.String(jtv)
15167			}
15168
15169		case "ReleaseDate":
15170			if value != nil {
15171				jtv, ok := value.(string)
15172				if !ok {
15173					return fmt.Errorf("expected ReleaseDate to be of type string, got %T instead", value)
15174				}
15175				sv.ReleaseDate = ptr.String(jtv)
15176			}
15177
15178		case "Reviews":
15179			if err := awsAwsjson11_deserializeDocumentReviews(&sv.Reviews, value); err != nil {
15180				return err
15181			}
15182
15183		case "SkillTypes":
15184			if err := awsAwsjson11_deserializeDocumentSkillTypes(&sv.SkillTypes, value); err != nil {
15185				return err
15186			}
15187
15188		default:
15189			_, _ = key, value
15190
15191		}
15192	}
15193	*v = sv
15194	return nil
15195}
15196
15197func awsAwsjson11_deserializeDocumentSkillGroup(v **types.SkillGroup, value interface{}) error {
15198	if v == nil {
15199		return fmt.Errorf("unexpected nil of type %T", v)
15200	}
15201	if value == nil {
15202		return nil
15203	}
15204
15205	shape, ok := value.(map[string]interface{})
15206	if !ok {
15207		return fmt.Errorf("unexpected JSON type %v", value)
15208	}
15209
15210	var sv *types.SkillGroup
15211	if *v == nil {
15212		sv = &types.SkillGroup{}
15213	} else {
15214		sv = *v
15215	}
15216
15217	for key, value := range shape {
15218		switch key {
15219		case "Description":
15220			if value != nil {
15221				jtv, ok := value.(string)
15222				if !ok {
15223					return fmt.Errorf("expected SkillGroupDescription to be of type string, got %T instead", value)
15224				}
15225				sv.Description = ptr.String(jtv)
15226			}
15227
15228		case "SkillGroupArn":
15229			if value != nil {
15230				jtv, ok := value.(string)
15231				if !ok {
15232					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
15233				}
15234				sv.SkillGroupArn = ptr.String(jtv)
15235			}
15236
15237		case "SkillGroupName":
15238			if value != nil {
15239				jtv, ok := value.(string)
15240				if !ok {
15241					return fmt.Errorf("expected SkillGroupName to be of type string, got %T instead", value)
15242				}
15243				sv.SkillGroupName = ptr.String(jtv)
15244			}
15245
15246		default:
15247			_, _ = key, value
15248
15249		}
15250	}
15251	*v = sv
15252	return nil
15253}
15254
15255func awsAwsjson11_deserializeDocumentSkillGroupData(v **types.SkillGroupData, value interface{}) error {
15256	if v == nil {
15257		return fmt.Errorf("unexpected nil of type %T", v)
15258	}
15259	if value == nil {
15260		return nil
15261	}
15262
15263	shape, ok := value.(map[string]interface{})
15264	if !ok {
15265		return fmt.Errorf("unexpected JSON type %v", value)
15266	}
15267
15268	var sv *types.SkillGroupData
15269	if *v == nil {
15270		sv = &types.SkillGroupData{}
15271	} else {
15272		sv = *v
15273	}
15274
15275	for key, value := range shape {
15276		switch key {
15277		case "Description":
15278			if value != nil {
15279				jtv, ok := value.(string)
15280				if !ok {
15281					return fmt.Errorf("expected SkillGroupDescription to be of type string, got %T instead", value)
15282				}
15283				sv.Description = ptr.String(jtv)
15284			}
15285
15286		case "SkillGroupArn":
15287			if value != nil {
15288				jtv, ok := value.(string)
15289				if !ok {
15290					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
15291				}
15292				sv.SkillGroupArn = ptr.String(jtv)
15293			}
15294
15295		case "SkillGroupName":
15296			if value != nil {
15297				jtv, ok := value.(string)
15298				if !ok {
15299					return fmt.Errorf("expected SkillGroupName to be of type string, got %T instead", value)
15300				}
15301				sv.SkillGroupName = ptr.String(jtv)
15302			}
15303
15304		default:
15305			_, _ = key, value
15306
15307		}
15308	}
15309	*v = sv
15310	return nil
15311}
15312
15313func awsAwsjson11_deserializeDocumentSkillGroupDataList(v *[]types.SkillGroupData, value interface{}) error {
15314	if v == nil {
15315		return fmt.Errorf("unexpected nil of type %T", v)
15316	}
15317	if value == nil {
15318		return nil
15319	}
15320
15321	shape, ok := value.([]interface{})
15322	if !ok {
15323		return fmt.Errorf("unexpected JSON type %v", value)
15324	}
15325
15326	var cv []types.SkillGroupData
15327	if *v == nil {
15328		cv = []types.SkillGroupData{}
15329	} else {
15330		cv = *v
15331	}
15332
15333	for _, value := range shape {
15334		var col types.SkillGroupData
15335		destAddr := &col
15336		if err := awsAwsjson11_deserializeDocumentSkillGroupData(&destAddr, value); err != nil {
15337			return err
15338		}
15339		col = *destAddr
15340		cv = append(cv, col)
15341
15342	}
15343	*v = cv
15344	return nil
15345}
15346
15347func awsAwsjson11_deserializeDocumentSkillNotLinkedException(v **types.SkillNotLinkedException, value interface{}) error {
15348	if v == nil {
15349		return fmt.Errorf("unexpected nil of type %T", v)
15350	}
15351	if value == nil {
15352		return nil
15353	}
15354
15355	shape, ok := value.(map[string]interface{})
15356	if !ok {
15357		return fmt.Errorf("unexpected JSON type %v", value)
15358	}
15359
15360	var sv *types.SkillNotLinkedException
15361	if *v == nil {
15362		sv = &types.SkillNotLinkedException{}
15363	} else {
15364		sv = *v
15365	}
15366
15367	for key, value := range shape {
15368		switch key {
15369		case "Message":
15370			if value != nil {
15371				jtv, ok := value.(string)
15372				if !ok {
15373					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
15374				}
15375				sv.Message = ptr.String(jtv)
15376			}
15377
15378		default:
15379			_, _ = key, value
15380
15381		}
15382	}
15383	*v = sv
15384	return nil
15385}
15386
15387func awsAwsjson11_deserializeDocumentSkillsStoreSkill(v **types.SkillsStoreSkill, value interface{}) error {
15388	if v == nil {
15389		return fmt.Errorf("unexpected nil of type %T", v)
15390	}
15391	if value == nil {
15392		return nil
15393	}
15394
15395	shape, ok := value.(map[string]interface{})
15396	if !ok {
15397		return fmt.Errorf("unexpected JSON type %v", value)
15398	}
15399
15400	var sv *types.SkillsStoreSkill
15401	if *v == nil {
15402		sv = &types.SkillsStoreSkill{}
15403	} else {
15404		sv = *v
15405	}
15406
15407	for key, value := range shape {
15408		switch key {
15409		case "IconUrl":
15410			if value != nil {
15411				jtv, ok := value.(string)
15412				if !ok {
15413					return fmt.Errorf("expected IconUrl to be of type string, got %T instead", value)
15414				}
15415				sv.IconUrl = ptr.String(jtv)
15416			}
15417
15418		case "SampleUtterances":
15419			if err := awsAwsjson11_deserializeDocumentSampleUtterances(&sv.SampleUtterances, value); err != nil {
15420				return err
15421			}
15422
15423		case "ShortDescription":
15424			if value != nil {
15425				jtv, ok := value.(string)
15426				if !ok {
15427					return fmt.Errorf("expected ShortDescription to be of type string, got %T instead", value)
15428				}
15429				sv.ShortDescription = ptr.String(jtv)
15430			}
15431
15432		case "SkillDetails":
15433			if err := awsAwsjson11_deserializeDocumentSkillDetails(&sv.SkillDetails, value); err != nil {
15434				return err
15435			}
15436
15437		case "SkillId":
15438			if value != nil {
15439				jtv, ok := value.(string)
15440				if !ok {
15441					return fmt.Errorf("expected SkillId to be of type string, got %T instead", value)
15442				}
15443				sv.SkillId = ptr.String(jtv)
15444			}
15445
15446		case "SkillName":
15447			if value != nil {
15448				jtv, ok := value.(string)
15449				if !ok {
15450					return fmt.Errorf("expected SkillName to be of type string, got %T instead", value)
15451				}
15452				sv.SkillName = ptr.String(jtv)
15453			}
15454
15455		case "SupportsLinking":
15456			if value != nil {
15457				jtv, ok := value.(bool)
15458				if !ok {
15459					return fmt.Errorf("expected Boolean2 to be of type *bool, got %T instead", value)
15460				}
15461				sv.SupportsLinking = jtv
15462			}
15463
15464		default:
15465			_, _ = key, value
15466
15467		}
15468	}
15469	*v = sv
15470	return nil
15471}
15472
15473func awsAwsjson11_deserializeDocumentSkillsStoreSkillList(v *[]types.SkillsStoreSkill, value interface{}) error {
15474	if v == nil {
15475		return fmt.Errorf("unexpected nil of type %T", v)
15476	}
15477	if value == nil {
15478		return nil
15479	}
15480
15481	shape, ok := value.([]interface{})
15482	if !ok {
15483		return fmt.Errorf("unexpected JSON type %v", value)
15484	}
15485
15486	var cv []types.SkillsStoreSkill
15487	if *v == nil {
15488		cv = []types.SkillsStoreSkill{}
15489	} else {
15490		cv = *v
15491	}
15492
15493	for _, value := range shape {
15494		var col types.SkillsStoreSkill
15495		destAddr := &col
15496		if err := awsAwsjson11_deserializeDocumentSkillsStoreSkill(&destAddr, value); err != nil {
15497			return err
15498		}
15499		col = *destAddr
15500		cv = append(cv, col)
15501
15502	}
15503	*v = cv
15504	return nil
15505}
15506
15507func awsAwsjson11_deserializeDocumentSkillSummary(v **types.SkillSummary, value interface{}) error {
15508	if v == nil {
15509		return fmt.Errorf("unexpected nil of type %T", v)
15510	}
15511	if value == nil {
15512		return nil
15513	}
15514
15515	shape, ok := value.(map[string]interface{})
15516	if !ok {
15517		return fmt.Errorf("unexpected JSON type %v", value)
15518	}
15519
15520	var sv *types.SkillSummary
15521	if *v == nil {
15522		sv = &types.SkillSummary{}
15523	} else {
15524		sv = *v
15525	}
15526
15527	for key, value := range shape {
15528		switch key {
15529		case "EnablementType":
15530			if value != nil {
15531				jtv, ok := value.(string)
15532				if !ok {
15533					return fmt.Errorf("expected EnablementType to be of type string, got %T instead", value)
15534				}
15535				sv.EnablementType = types.EnablementType(jtv)
15536			}
15537
15538		case "SkillId":
15539			if value != nil {
15540				jtv, ok := value.(string)
15541				if !ok {
15542					return fmt.Errorf("expected SkillId to be of type string, got %T instead", value)
15543				}
15544				sv.SkillId = ptr.String(jtv)
15545			}
15546
15547		case "SkillName":
15548			if value != nil {
15549				jtv, ok := value.(string)
15550				if !ok {
15551					return fmt.Errorf("expected SkillName to be of type string, got %T instead", value)
15552				}
15553				sv.SkillName = ptr.String(jtv)
15554			}
15555
15556		case "SkillType":
15557			if value != nil {
15558				jtv, ok := value.(string)
15559				if !ok {
15560					return fmt.Errorf("expected SkillType to be of type string, got %T instead", value)
15561				}
15562				sv.SkillType = types.SkillType(jtv)
15563			}
15564
15565		case "SupportsLinking":
15566			if value != nil {
15567				jtv, ok := value.(bool)
15568				if !ok {
15569					return fmt.Errorf("expected Boolean2 to be of type *bool, got %T instead", value)
15570				}
15571				sv.SupportsLinking = jtv
15572			}
15573
15574		default:
15575			_, _ = key, value
15576
15577		}
15578	}
15579	*v = sv
15580	return nil
15581}
15582
15583func awsAwsjson11_deserializeDocumentSkillSummaryList(v *[]types.SkillSummary, value interface{}) error {
15584	if v == nil {
15585		return fmt.Errorf("unexpected nil of type %T", v)
15586	}
15587	if value == nil {
15588		return nil
15589	}
15590
15591	shape, ok := value.([]interface{})
15592	if !ok {
15593		return fmt.Errorf("unexpected JSON type %v", value)
15594	}
15595
15596	var cv []types.SkillSummary
15597	if *v == nil {
15598		cv = []types.SkillSummary{}
15599	} else {
15600		cv = *v
15601	}
15602
15603	for _, value := range shape {
15604		var col types.SkillSummary
15605		destAddr := &col
15606		if err := awsAwsjson11_deserializeDocumentSkillSummary(&destAddr, value); err != nil {
15607			return err
15608		}
15609		col = *destAddr
15610		cv = append(cv, col)
15611
15612	}
15613	*v = cv
15614	return nil
15615}
15616
15617func awsAwsjson11_deserializeDocumentSkillTypes(v *[]string, value interface{}) error {
15618	if v == nil {
15619		return fmt.Errorf("unexpected nil of type %T", v)
15620	}
15621	if value == nil {
15622		return nil
15623	}
15624
15625	shape, ok := value.([]interface{})
15626	if !ok {
15627		return fmt.Errorf("unexpected JSON type %v", value)
15628	}
15629
15630	var cv []string
15631	if *v == nil {
15632		cv = []string{}
15633	} else {
15634		cv = *v
15635	}
15636
15637	for _, value := range shape {
15638		var col string
15639		if value != nil {
15640			jtv, ok := value.(string)
15641			if !ok {
15642				return fmt.Errorf("expected SkillStoreType to be of type string, got %T instead", value)
15643			}
15644			col = jtv
15645		}
15646		cv = append(cv, col)
15647
15648	}
15649	*v = cv
15650	return nil
15651}
15652
15653func awsAwsjson11_deserializeDocumentSmartHomeAppliance(v **types.SmartHomeAppliance, value interface{}) error {
15654	if v == nil {
15655		return fmt.Errorf("unexpected nil of type %T", v)
15656	}
15657	if value == nil {
15658		return nil
15659	}
15660
15661	shape, ok := value.(map[string]interface{})
15662	if !ok {
15663		return fmt.Errorf("unexpected JSON type %v", value)
15664	}
15665
15666	var sv *types.SmartHomeAppliance
15667	if *v == nil {
15668		sv = &types.SmartHomeAppliance{}
15669	} else {
15670		sv = *v
15671	}
15672
15673	for key, value := range shape {
15674		switch key {
15675		case "Description":
15676			if value != nil {
15677				jtv, ok := value.(string)
15678				if !ok {
15679					return fmt.Errorf("expected ApplianceDescription to be of type string, got %T instead", value)
15680				}
15681				sv.Description = ptr.String(jtv)
15682			}
15683
15684		case "FriendlyName":
15685			if value != nil {
15686				jtv, ok := value.(string)
15687				if !ok {
15688					return fmt.Errorf("expected ApplianceFriendlyName to be of type string, got %T instead", value)
15689				}
15690				sv.FriendlyName = ptr.String(jtv)
15691			}
15692
15693		case "ManufacturerName":
15694			if value != nil {
15695				jtv, ok := value.(string)
15696				if !ok {
15697					return fmt.Errorf("expected ApplianceManufacturerName to be of type string, got %T instead", value)
15698				}
15699				sv.ManufacturerName = ptr.String(jtv)
15700			}
15701
15702		default:
15703			_, _ = key, value
15704
15705		}
15706	}
15707	*v = sv
15708	return nil
15709}
15710
15711func awsAwsjson11_deserializeDocumentSmartHomeApplianceList(v *[]types.SmartHomeAppliance, value interface{}) error {
15712	if v == nil {
15713		return fmt.Errorf("unexpected nil of type %T", v)
15714	}
15715	if value == nil {
15716		return nil
15717	}
15718
15719	shape, ok := value.([]interface{})
15720	if !ok {
15721		return fmt.Errorf("unexpected JSON type %v", value)
15722	}
15723
15724	var cv []types.SmartHomeAppliance
15725	if *v == nil {
15726		cv = []types.SmartHomeAppliance{}
15727	} else {
15728		cv = *v
15729	}
15730
15731	for _, value := range shape {
15732		var col types.SmartHomeAppliance
15733		destAddr := &col
15734		if err := awsAwsjson11_deserializeDocumentSmartHomeAppliance(&destAddr, value); err != nil {
15735			return err
15736		}
15737		col = *destAddr
15738		cv = append(cv, col)
15739
15740	}
15741	*v = cv
15742	return nil
15743}
15744
15745func awsAwsjson11_deserializeDocumentTag(v **types.Tag, value interface{}) error {
15746	if v == nil {
15747		return fmt.Errorf("unexpected nil of type %T", v)
15748	}
15749	if value == nil {
15750		return nil
15751	}
15752
15753	shape, ok := value.(map[string]interface{})
15754	if !ok {
15755		return fmt.Errorf("unexpected JSON type %v", value)
15756	}
15757
15758	var sv *types.Tag
15759	if *v == nil {
15760		sv = &types.Tag{}
15761	} else {
15762		sv = *v
15763	}
15764
15765	for key, value := range shape {
15766		switch key {
15767		case "Key":
15768			if value != nil {
15769				jtv, ok := value.(string)
15770				if !ok {
15771					return fmt.Errorf("expected TagKey to be of type string, got %T instead", value)
15772				}
15773				sv.Key = ptr.String(jtv)
15774			}
15775
15776		case "Value":
15777			if value != nil {
15778				jtv, ok := value.(string)
15779				if !ok {
15780					return fmt.Errorf("expected TagValue to be of type string, got %T instead", value)
15781				}
15782				sv.Value = ptr.String(jtv)
15783			}
15784
15785		default:
15786			_, _ = key, value
15787
15788		}
15789	}
15790	*v = sv
15791	return nil
15792}
15793
15794func awsAwsjson11_deserializeDocumentTagList(v *[]types.Tag, value interface{}) error {
15795	if v == nil {
15796		return fmt.Errorf("unexpected nil of type %T", v)
15797	}
15798	if value == nil {
15799		return nil
15800	}
15801
15802	shape, ok := value.([]interface{})
15803	if !ok {
15804		return fmt.Errorf("unexpected JSON type %v", value)
15805	}
15806
15807	var cv []types.Tag
15808	if *v == nil {
15809		cv = []types.Tag{}
15810	} else {
15811		cv = *v
15812	}
15813
15814	for _, value := range shape {
15815		var col types.Tag
15816		destAddr := &col
15817		if err := awsAwsjson11_deserializeDocumentTag(&destAddr, value); err != nil {
15818			return err
15819		}
15820		col = *destAddr
15821		cv = append(cv, col)
15822
15823	}
15824	*v = cv
15825	return nil
15826}
15827
15828func awsAwsjson11_deserializeDocumentTrustAnchorList(v *[]string, value interface{}) error {
15829	if v == nil {
15830		return fmt.Errorf("unexpected nil of type %T", v)
15831	}
15832	if value == nil {
15833		return nil
15834	}
15835
15836	shape, ok := value.([]interface{})
15837	if !ok {
15838		return fmt.Errorf("unexpected JSON type %v", value)
15839	}
15840
15841	var cv []string
15842	if *v == nil {
15843		cv = []string{}
15844	} else {
15845		cv = *v
15846	}
15847
15848	for _, value := range shape {
15849		var col string
15850		if value != nil {
15851			jtv, ok := value.(string)
15852			if !ok {
15853				return fmt.Errorf("expected TrustAnchor to be of type string, got %T instead", value)
15854			}
15855			col = jtv
15856		}
15857		cv = append(cv, col)
15858
15859	}
15860	*v = cv
15861	return nil
15862}
15863
15864func awsAwsjson11_deserializeDocumentUnauthorizedException(v **types.UnauthorizedException, value interface{}) error {
15865	if v == nil {
15866		return fmt.Errorf("unexpected nil of type %T", v)
15867	}
15868	if value == nil {
15869		return nil
15870	}
15871
15872	shape, ok := value.(map[string]interface{})
15873	if !ok {
15874		return fmt.Errorf("unexpected JSON type %v", value)
15875	}
15876
15877	var sv *types.UnauthorizedException
15878	if *v == nil {
15879		sv = &types.UnauthorizedException{}
15880	} else {
15881		sv = *v
15882	}
15883
15884	for key, value := range shape {
15885		switch key {
15886		case "Message":
15887			if value != nil {
15888				jtv, ok := value.(string)
15889				if !ok {
15890					return fmt.Errorf("expected ErrorMessage to be of type string, got %T instead", value)
15891				}
15892				sv.Message = ptr.String(jtv)
15893			}
15894
15895		default:
15896			_, _ = key, value
15897
15898		}
15899	}
15900	*v = sv
15901	return nil
15902}
15903
15904func awsAwsjson11_deserializeDocumentUserData(v **types.UserData, value interface{}) error {
15905	if v == nil {
15906		return fmt.Errorf("unexpected nil of type %T", v)
15907	}
15908	if value == nil {
15909		return nil
15910	}
15911
15912	shape, ok := value.(map[string]interface{})
15913	if !ok {
15914		return fmt.Errorf("unexpected JSON type %v", value)
15915	}
15916
15917	var sv *types.UserData
15918	if *v == nil {
15919		sv = &types.UserData{}
15920	} else {
15921		sv = *v
15922	}
15923
15924	for key, value := range shape {
15925		switch key {
15926		case "Email":
15927			if value != nil {
15928				jtv, ok := value.(string)
15929				if !ok {
15930					return fmt.Errorf("expected Email to be of type string, got %T instead", value)
15931				}
15932				sv.Email = ptr.String(jtv)
15933			}
15934
15935		case "EnrollmentId":
15936			if value != nil {
15937				jtv, ok := value.(string)
15938				if !ok {
15939					return fmt.Errorf("expected EnrollmentId to be of type string, got %T instead", value)
15940				}
15941				sv.EnrollmentId = ptr.String(jtv)
15942			}
15943
15944		case "EnrollmentStatus":
15945			if value != nil {
15946				jtv, ok := value.(string)
15947				if !ok {
15948					return fmt.Errorf("expected EnrollmentStatus to be of type string, got %T instead", value)
15949				}
15950				sv.EnrollmentStatus = types.EnrollmentStatus(jtv)
15951			}
15952
15953		case "FirstName":
15954			if value != nil {
15955				jtv, ok := value.(string)
15956				if !ok {
15957					return fmt.Errorf("expected user_FirstName to be of type string, got %T instead", value)
15958				}
15959				sv.FirstName = ptr.String(jtv)
15960			}
15961
15962		case "LastName":
15963			if value != nil {
15964				jtv, ok := value.(string)
15965				if !ok {
15966					return fmt.Errorf("expected user_LastName to be of type string, got %T instead", value)
15967				}
15968				sv.LastName = ptr.String(jtv)
15969			}
15970
15971		case "UserArn":
15972			if value != nil {
15973				jtv, ok := value.(string)
15974				if !ok {
15975					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
15976				}
15977				sv.UserArn = ptr.String(jtv)
15978			}
15979
15980		default:
15981			_, _ = key, value
15982
15983		}
15984	}
15985	*v = sv
15986	return nil
15987}
15988
15989func awsAwsjson11_deserializeDocumentUserDataList(v *[]types.UserData, value interface{}) error {
15990	if v == nil {
15991		return fmt.Errorf("unexpected nil of type %T", v)
15992	}
15993	if value == nil {
15994		return nil
15995	}
15996
15997	shape, ok := value.([]interface{})
15998	if !ok {
15999		return fmt.Errorf("unexpected JSON type %v", value)
16000	}
16001
16002	var cv []types.UserData
16003	if *v == nil {
16004		cv = []types.UserData{}
16005	} else {
16006		cv = *v
16007	}
16008
16009	for _, value := range shape {
16010		var col types.UserData
16011		destAddr := &col
16012		if err := awsAwsjson11_deserializeDocumentUserData(&destAddr, value); err != nil {
16013			return err
16014		}
16015		col = *destAddr
16016		cv = append(cv, col)
16017
16018	}
16019	*v = cv
16020	return nil
16021}
16022
16023func awsAwsjson11_deserializeOpDocumentApproveSkillOutput(v **ApproveSkillOutput, value interface{}) error {
16024	if v == nil {
16025		return fmt.Errorf("unexpected nil of type %T", v)
16026	}
16027	if value == nil {
16028		return nil
16029	}
16030
16031	shape, ok := value.(map[string]interface{})
16032	if !ok {
16033		return fmt.Errorf("unexpected JSON type %v", value)
16034	}
16035
16036	var sv *ApproveSkillOutput
16037	if *v == nil {
16038		sv = &ApproveSkillOutput{}
16039	} else {
16040		sv = *v
16041	}
16042
16043	for key, value := range shape {
16044		switch key {
16045		default:
16046			_, _ = key, value
16047
16048		}
16049	}
16050	*v = sv
16051	return nil
16052}
16053
16054func awsAwsjson11_deserializeOpDocumentAssociateContactWithAddressBookOutput(v **AssociateContactWithAddressBookOutput, value interface{}) error {
16055	if v == nil {
16056		return fmt.Errorf("unexpected nil of type %T", v)
16057	}
16058	if value == nil {
16059		return nil
16060	}
16061
16062	shape, ok := value.(map[string]interface{})
16063	if !ok {
16064		return fmt.Errorf("unexpected JSON type %v", value)
16065	}
16066
16067	var sv *AssociateContactWithAddressBookOutput
16068	if *v == nil {
16069		sv = &AssociateContactWithAddressBookOutput{}
16070	} else {
16071		sv = *v
16072	}
16073
16074	for key, value := range shape {
16075		switch key {
16076		default:
16077			_, _ = key, value
16078
16079		}
16080	}
16081	*v = sv
16082	return nil
16083}
16084
16085func awsAwsjson11_deserializeOpDocumentAssociateDeviceWithNetworkProfileOutput(v **AssociateDeviceWithNetworkProfileOutput, value interface{}) error {
16086	if v == nil {
16087		return fmt.Errorf("unexpected nil of type %T", v)
16088	}
16089	if value == nil {
16090		return nil
16091	}
16092
16093	shape, ok := value.(map[string]interface{})
16094	if !ok {
16095		return fmt.Errorf("unexpected JSON type %v", value)
16096	}
16097
16098	var sv *AssociateDeviceWithNetworkProfileOutput
16099	if *v == nil {
16100		sv = &AssociateDeviceWithNetworkProfileOutput{}
16101	} else {
16102		sv = *v
16103	}
16104
16105	for key, value := range shape {
16106		switch key {
16107		default:
16108			_, _ = key, value
16109
16110		}
16111	}
16112	*v = sv
16113	return nil
16114}
16115
16116func awsAwsjson11_deserializeOpDocumentAssociateDeviceWithRoomOutput(v **AssociateDeviceWithRoomOutput, value interface{}) error {
16117	if v == nil {
16118		return fmt.Errorf("unexpected nil of type %T", v)
16119	}
16120	if value == nil {
16121		return nil
16122	}
16123
16124	shape, ok := value.(map[string]interface{})
16125	if !ok {
16126		return fmt.Errorf("unexpected JSON type %v", value)
16127	}
16128
16129	var sv *AssociateDeviceWithRoomOutput
16130	if *v == nil {
16131		sv = &AssociateDeviceWithRoomOutput{}
16132	} else {
16133		sv = *v
16134	}
16135
16136	for key, value := range shape {
16137		switch key {
16138		default:
16139			_, _ = key, value
16140
16141		}
16142	}
16143	*v = sv
16144	return nil
16145}
16146
16147func awsAwsjson11_deserializeOpDocumentAssociateSkillGroupWithRoomOutput(v **AssociateSkillGroupWithRoomOutput, value interface{}) error {
16148	if v == nil {
16149		return fmt.Errorf("unexpected nil of type %T", v)
16150	}
16151	if value == nil {
16152		return nil
16153	}
16154
16155	shape, ok := value.(map[string]interface{})
16156	if !ok {
16157		return fmt.Errorf("unexpected JSON type %v", value)
16158	}
16159
16160	var sv *AssociateSkillGroupWithRoomOutput
16161	if *v == nil {
16162		sv = &AssociateSkillGroupWithRoomOutput{}
16163	} else {
16164		sv = *v
16165	}
16166
16167	for key, value := range shape {
16168		switch key {
16169		default:
16170			_, _ = key, value
16171
16172		}
16173	}
16174	*v = sv
16175	return nil
16176}
16177
16178func awsAwsjson11_deserializeOpDocumentAssociateSkillWithSkillGroupOutput(v **AssociateSkillWithSkillGroupOutput, value interface{}) error {
16179	if v == nil {
16180		return fmt.Errorf("unexpected nil of type %T", v)
16181	}
16182	if value == nil {
16183		return nil
16184	}
16185
16186	shape, ok := value.(map[string]interface{})
16187	if !ok {
16188		return fmt.Errorf("unexpected JSON type %v", value)
16189	}
16190
16191	var sv *AssociateSkillWithSkillGroupOutput
16192	if *v == nil {
16193		sv = &AssociateSkillWithSkillGroupOutput{}
16194	} else {
16195		sv = *v
16196	}
16197
16198	for key, value := range shape {
16199		switch key {
16200		default:
16201			_, _ = key, value
16202
16203		}
16204	}
16205	*v = sv
16206	return nil
16207}
16208
16209func awsAwsjson11_deserializeOpDocumentAssociateSkillWithUsersOutput(v **AssociateSkillWithUsersOutput, value interface{}) error {
16210	if v == nil {
16211		return fmt.Errorf("unexpected nil of type %T", v)
16212	}
16213	if value == nil {
16214		return nil
16215	}
16216
16217	shape, ok := value.(map[string]interface{})
16218	if !ok {
16219		return fmt.Errorf("unexpected JSON type %v", value)
16220	}
16221
16222	var sv *AssociateSkillWithUsersOutput
16223	if *v == nil {
16224		sv = &AssociateSkillWithUsersOutput{}
16225	} else {
16226		sv = *v
16227	}
16228
16229	for key, value := range shape {
16230		switch key {
16231		default:
16232			_, _ = key, value
16233
16234		}
16235	}
16236	*v = sv
16237	return nil
16238}
16239
16240func awsAwsjson11_deserializeOpDocumentCreateAddressBookOutput(v **CreateAddressBookOutput, value interface{}) error {
16241	if v == nil {
16242		return fmt.Errorf("unexpected nil of type %T", v)
16243	}
16244	if value == nil {
16245		return nil
16246	}
16247
16248	shape, ok := value.(map[string]interface{})
16249	if !ok {
16250		return fmt.Errorf("unexpected JSON type %v", value)
16251	}
16252
16253	var sv *CreateAddressBookOutput
16254	if *v == nil {
16255		sv = &CreateAddressBookOutput{}
16256	} else {
16257		sv = *v
16258	}
16259
16260	for key, value := range shape {
16261		switch key {
16262		case "AddressBookArn":
16263			if value != nil {
16264				jtv, ok := value.(string)
16265				if !ok {
16266					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16267				}
16268				sv.AddressBookArn = ptr.String(jtv)
16269			}
16270
16271		default:
16272			_, _ = key, value
16273
16274		}
16275	}
16276	*v = sv
16277	return nil
16278}
16279
16280func awsAwsjson11_deserializeOpDocumentCreateBusinessReportScheduleOutput(v **CreateBusinessReportScheduleOutput, value interface{}) error {
16281	if v == nil {
16282		return fmt.Errorf("unexpected nil of type %T", v)
16283	}
16284	if value == nil {
16285		return nil
16286	}
16287
16288	shape, ok := value.(map[string]interface{})
16289	if !ok {
16290		return fmt.Errorf("unexpected JSON type %v", value)
16291	}
16292
16293	var sv *CreateBusinessReportScheduleOutput
16294	if *v == nil {
16295		sv = &CreateBusinessReportScheduleOutput{}
16296	} else {
16297		sv = *v
16298	}
16299
16300	for key, value := range shape {
16301		switch key {
16302		case "ScheduleArn":
16303			if value != nil {
16304				jtv, ok := value.(string)
16305				if !ok {
16306					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16307				}
16308				sv.ScheduleArn = ptr.String(jtv)
16309			}
16310
16311		default:
16312			_, _ = key, value
16313
16314		}
16315	}
16316	*v = sv
16317	return nil
16318}
16319
16320func awsAwsjson11_deserializeOpDocumentCreateConferenceProviderOutput(v **CreateConferenceProviderOutput, value interface{}) error {
16321	if v == nil {
16322		return fmt.Errorf("unexpected nil of type %T", v)
16323	}
16324	if value == nil {
16325		return nil
16326	}
16327
16328	shape, ok := value.(map[string]interface{})
16329	if !ok {
16330		return fmt.Errorf("unexpected JSON type %v", value)
16331	}
16332
16333	var sv *CreateConferenceProviderOutput
16334	if *v == nil {
16335		sv = &CreateConferenceProviderOutput{}
16336	} else {
16337		sv = *v
16338	}
16339
16340	for key, value := range shape {
16341		switch key {
16342		case "ConferenceProviderArn":
16343			if value != nil {
16344				jtv, ok := value.(string)
16345				if !ok {
16346					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16347				}
16348				sv.ConferenceProviderArn = ptr.String(jtv)
16349			}
16350
16351		default:
16352			_, _ = key, value
16353
16354		}
16355	}
16356	*v = sv
16357	return nil
16358}
16359
16360func awsAwsjson11_deserializeOpDocumentCreateContactOutput(v **CreateContactOutput, value interface{}) error {
16361	if v == nil {
16362		return fmt.Errorf("unexpected nil of type %T", v)
16363	}
16364	if value == nil {
16365		return nil
16366	}
16367
16368	shape, ok := value.(map[string]interface{})
16369	if !ok {
16370		return fmt.Errorf("unexpected JSON type %v", value)
16371	}
16372
16373	var sv *CreateContactOutput
16374	if *v == nil {
16375		sv = &CreateContactOutput{}
16376	} else {
16377		sv = *v
16378	}
16379
16380	for key, value := range shape {
16381		switch key {
16382		case "ContactArn":
16383			if value != nil {
16384				jtv, ok := value.(string)
16385				if !ok {
16386					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16387				}
16388				sv.ContactArn = ptr.String(jtv)
16389			}
16390
16391		default:
16392			_, _ = key, value
16393
16394		}
16395	}
16396	*v = sv
16397	return nil
16398}
16399
16400func awsAwsjson11_deserializeOpDocumentCreateGatewayGroupOutput(v **CreateGatewayGroupOutput, value interface{}) error {
16401	if v == nil {
16402		return fmt.Errorf("unexpected nil of type %T", v)
16403	}
16404	if value == nil {
16405		return nil
16406	}
16407
16408	shape, ok := value.(map[string]interface{})
16409	if !ok {
16410		return fmt.Errorf("unexpected JSON type %v", value)
16411	}
16412
16413	var sv *CreateGatewayGroupOutput
16414	if *v == nil {
16415		sv = &CreateGatewayGroupOutput{}
16416	} else {
16417		sv = *v
16418	}
16419
16420	for key, value := range shape {
16421		switch key {
16422		case "GatewayGroupArn":
16423			if value != nil {
16424				jtv, ok := value.(string)
16425				if !ok {
16426					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16427				}
16428				sv.GatewayGroupArn = ptr.String(jtv)
16429			}
16430
16431		default:
16432			_, _ = key, value
16433
16434		}
16435	}
16436	*v = sv
16437	return nil
16438}
16439
16440func awsAwsjson11_deserializeOpDocumentCreateNetworkProfileOutput(v **CreateNetworkProfileOutput, value interface{}) error {
16441	if v == nil {
16442		return fmt.Errorf("unexpected nil of type %T", v)
16443	}
16444	if value == nil {
16445		return nil
16446	}
16447
16448	shape, ok := value.(map[string]interface{})
16449	if !ok {
16450		return fmt.Errorf("unexpected JSON type %v", value)
16451	}
16452
16453	var sv *CreateNetworkProfileOutput
16454	if *v == nil {
16455		sv = &CreateNetworkProfileOutput{}
16456	} else {
16457		sv = *v
16458	}
16459
16460	for key, value := range shape {
16461		switch key {
16462		case "NetworkProfileArn":
16463			if value != nil {
16464				jtv, ok := value.(string)
16465				if !ok {
16466					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16467				}
16468				sv.NetworkProfileArn = ptr.String(jtv)
16469			}
16470
16471		default:
16472			_, _ = key, value
16473
16474		}
16475	}
16476	*v = sv
16477	return nil
16478}
16479
16480func awsAwsjson11_deserializeOpDocumentCreateProfileOutput(v **CreateProfileOutput, value interface{}) error {
16481	if v == nil {
16482		return fmt.Errorf("unexpected nil of type %T", v)
16483	}
16484	if value == nil {
16485		return nil
16486	}
16487
16488	shape, ok := value.(map[string]interface{})
16489	if !ok {
16490		return fmt.Errorf("unexpected JSON type %v", value)
16491	}
16492
16493	var sv *CreateProfileOutput
16494	if *v == nil {
16495		sv = &CreateProfileOutput{}
16496	} else {
16497		sv = *v
16498	}
16499
16500	for key, value := range shape {
16501		switch key {
16502		case "ProfileArn":
16503			if value != nil {
16504				jtv, ok := value.(string)
16505				if !ok {
16506					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16507				}
16508				sv.ProfileArn = ptr.String(jtv)
16509			}
16510
16511		default:
16512			_, _ = key, value
16513
16514		}
16515	}
16516	*v = sv
16517	return nil
16518}
16519
16520func awsAwsjson11_deserializeOpDocumentCreateRoomOutput(v **CreateRoomOutput, value interface{}) error {
16521	if v == nil {
16522		return fmt.Errorf("unexpected nil of type %T", v)
16523	}
16524	if value == nil {
16525		return nil
16526	}
16527
16528	shape, ok := value.(map[string]interface{})
16529	if !ok {
16530		return fmt.Errorf("unexpected JSON type %v", value)
16531	}
16532
16533	var sv *CreateRoomOutput
16534	if *v == nil {
16535		sv = &CreateRoomOutput{}
16536	} else {
16537		sv = *v
16538	}
16539
16540	for key, value := range shape {
16541		switch key {
16542		case "RoomArn":
16543			if value != nil {
16544				jtv, ok := value.(string)
16545				if !ok {
16546					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16547				}
16548				sv.RoomArn = ptr.String(jtv)
16549			}
16550
16551		default:
16552			_, _ = key, value
16553
16554		}
16555	}
16556	*v = sv
16557	return nil
16558}
16559
16560func awsAwsjson11_deserializeOpDocumentCreateSkillGroupOutput(v **CreateSkillGroupOutput, value interface{}) error {
16561	if v == nil {
16562		return fmt.Errorf("unexpected nil of type %T", v)
16563	}
16564	if value == nil {
16565		return nil
16566	}
16567
16568	shape, ok := value.(map[string]interface{})
16569	if !ok {
16570		return fmt.Errorf("unexpected JSON type %v", value)
16571	}
16572
16573	var sv *CreateSkillGroupOutput
16574	if *v == nil {
16575		sv = &CreateSkillGroupOutput{}
16576	} else {
16577		sv = *v
16578	}
16579
16580	for key, value := range shape {
16581		switch key {
16582		case "SkillGroupArn":
16583			if value != nil {
16584				jtv, ok := value.(string)
16585				if !ok {
16586					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16587				}
16588				sv.SkillGroupArn = ptr.String(jtv)
16589			}
16590
16591		default:
16592			_, _ = key, value
16593
16594		}
16595	}
16596	*v = sv
16597	return nil
16598}
16599
16600func awsAwsjson11_deserializeOpDocumentCreateUserOutput(v **CreateUserOutput, value interface{}) error {
16601	if v == nil {
16602		return fmt.Errorf("unexpected nil of type %T", v)
16603	}
16604	if value == nil {
16605		return nil
16606	}
16607
16608	shape, ok := value.(map[string]interface{})
16609	if !ok {
16610		return fmt.Errorf("unexpected JSON type %v", value)
16611	}
16612
16613	var sv *CreateUserOutput
16614	if *v == nil {
16615		sv = &CreateUserOutput{}
16616	} else {
16617		sv = *v
16618	}
16619
16620	for key, value := range shape {
16621		switch key {
16622		case "UserArn":
16623			if value != nil {
16624				jtv, ok := value.(string)
16625				if !ok {
16626					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
16627				}
16628				sv.UserArn = ptr.String(jtv)
16629			}
16630
16631		default:
16632			_, _ = key, value
16633
16634		}
16635	}
16636	*v = sv
16637	return nil
16638}
16639
16640func awsAwsjson11_deserializeOpDocumentDeleteAddressBookOutput(v **DeleteAddressBookOutput, value interface{}) error {
16641	if v == nil {
16642		return fmt.Errorf("unexpected nil of type %T", v)
16643	}
16644	if value == nil {
16645		return nil
16646	}
16647
16648	shape, ok := value.(map[string]interface{})
16649	if !ok {
16650		return fmt.Errorf("unexpected JSON type %v", value)
16651	}
16652
16653	var sv *DeleteAddressBookOutput
16654	if *v == nil {
16655		sv = &DeleteAddressBookOutput{}
16656	} else {
16657		sv = *v
16658	}
16659
16660	for key, value := range shape {
16661		switch key {
16662		default:
16663			_, _ = key, value
16664
16665		}
16666	}
16667	*v = sv
16668	return nil
16669}
16670
16671func awsAwsjson11_deserializeOpDocumentDeleteBusinessReportScheduleOutput(v **DeleteBusinessReportScheduleOutput, value interface{}) error {
16672	if v == nil {
16673		return fmt.Errorf("unexpected nil of type %T", v)
16674	}
16675	if value == nil {
16676		return nil
16677	}
16678
16679	shape, ok := value.(map[string]interface{})
16680	if !ok {
16681		return fmt.Errorf("unexpected JSON type %v", value)
16682	}
16683
16684	var sv *DeleteBusinessReportScheduleOutput
16685	if *v == nil {
16686		sv = &DeleteBusinessReportScheduleOutput{}
16687	} else {
16688		sv = *v
16689	}
16690
16691	for key, value := range shape {
16692		switch key {
16693		default:
16694			_, _ = key, value
16695
16696		}
16697	}
16698	*v = sv
16699	return nil
16700}
16701
16702func awsAwsjson11_deserializeOpDocumentDeleteConferenceProviderOutput(v **DeleteConferenceProviderOutput, value interface{}) error {
16703	if v == nil {
16704		return fmt.Errorf("unexpected nil of type %T", v)
16705	}
16706	if value == nil {
16707		return nil
16708	}
16709
16710	shape, ok := value.(map[string]interface{})
16711	if !ok {
16712		return fmt.Errorf("unexpected JSON type %v", value)
16713	}
16714
16715	var sv *DeleteConferenceProviderOutput
16716	if *v == nil {
16717		sv = &DeleteConferenceProviderOutput{}
16718	} else {
16719		sv = *v
16720	}
16721
16722	for key, value := range shape {
16723		switch key {
16724		default:
16725			_, _ = key, value
16726
16727		}
16728	}
16729	*v = sv
16730	return nil
16731}
16732
16733func awsAwsjson11_deserializeOpDocumentDeleteContactOutput(v **DeleteContactOutput, value interface{}) error {
16734	if v == nil {
16735		return fmt.Errorf("unexpected nil of type %T", v)
16736	}
16737	if value == nil {
16738		return nil
16739	}
16740
16741	shape, ok := value.(map[string]interface{})
16742	if !ok {
16743		return fmt.Errorf("unexpected JSON type %v", value)
16744	}
16745
16746	var sv *DeleteContactOutput
16747	if *v == nil {
16748		sv = &DeleteContactOutput{}
16749	} else {
16750		sv = *v
16751	}
16752
16753	for key, value := range shape {
16754		switch key {
16755		default:
16756			_, _ = key, value
16757
16758		}
16759	}
16760	*v = sv
16761	return nil
16762}
16763
16764func awsAwsjson11_deserializeOpDocumentDeleteDeviceOutput(v **DeleteDeviceOutput, value interface{}) error {
16765	if v == nil {
16766		return fmt.Errorf("unexpected nil of type %T", v)
16767	}
16768	if value == nil {
16769		return nil
16770	}
16771
16772	shape, ok := value.(map[string]interface{})
16773	if !ok {
16774		return fmt.Errorf("unexpected JSON type %v", value)
16775	}
16776
16777	var sv *DeleteDeviceOutput
16778	if *v == nil {
16779		sv = &DeleteDeviceOutput{}
16780	} else {
16781		sv = *v
16782	}
16783
16784	for key, value := range shape {
16785		switch key {
16786		default:
16787			_, _ = key, value
16788
16789		}
16790	}
16791	*v = sv
16792	return nil
16793}
16794
16795func awsAwsjson11_deserializeOpDocumentDeleteDeviceUsageDataOutput(v **DeleteDeviceUsageDataOutput, value interface{}) error {
16796	if v == nil {
16797		return fmt.Errorf("unexpected nil of type %T", v)
16798	}
16799	if value == nil {
16800		return nil
16801	}
16802
16803	shape, ok := value.(map[string]interface{})
16804	if !ok {
16805		return fmt.Errorf("unexpected JSON type %v", value)
16806	}
16807
16808	var sv *DeleteDeviceUsageDataOutput
16809	if *v == nil {
16810		sv = &DeleteDeviceUsageDataOutput{}
16811	} else {
16812		sv = *v
16813	}
16814
16815	for key, value := range shape {
16816		switch key {
16817		default:
16818			_, _ = key, value
16819
16820		}
16821	}
16822	*v = sv
16823	return nil
16824}
16825
16826func awsAwsjson11_deserializeOpDocumentDeleteGatewayGroupOutput(v **DeleteGatewayGroupOutput, value interface{}) error {
16827	if v == nil {
16828		return fmt.Errorf("unexpected nil of type %T", v)
16829	}
16830	if value == nil {
16831		return nil
16832	}
16833
16834	shape, ok := value.(map[string]interface{})
16835	if !ok {
16836		return fmt.Errorf("unexpected JSON type %v", value)
16837	}
16838
16839	var sv *DeleteGatewayGroupOutput
16840	if *v == nil {
16841		sv = &DeleteGatewayGroupOutput{}
16842	} else {
16843		sv = *v
16844	}
16845
16846	for key, value := range shape {
16847		switch key {
16848		default:
16849			_, _ = key, value
16850
16851		}
16852	}
16853	*v = sv
16854	return nil
16855}
16856
16857func awsAwsjson11_deserializeOpDocumentDeleteNetworkProfileOutput(v **DeleteNetworkProfileOutput, value interface{}) error {
16858	if v == nil {
16859		return fmt.Errorf("unexpected nil of type %T", v)
16860	}
16861	if value == nil {
16862		return nil
16863	}
16864
16865	shape, ok := value.(map[string]interface{})
16866	if !ok {
16867		return fmt.Errorf("unexpected JSON type %v", value)
16868	}
16869
16870	var sv *DeleteNetworkProfileOutput
16871	if *v == nil {
16872		sv = &DeleteNetworkProfileOutput{}
16873	} else {
16874		sv = *v
16875	}
16876
16877	for key, value := range shape {
16878		switch key {
16879		default:
16880			_, _ = key, value
16881
16882		}
16883	}
16884	*v = sv
16885	return nil
16886}
16887
16888func awsAwsjson11_deserializeOpDocumentDeleteProfileOutput(v **DeleteProfileOutput, value interface{}) error {
16889	if v == nil {
16890		return fmt.Errorf("unexpected nil of type %T", v)
16891	}
16892	if value == nil {
16893		return nil
16894	}
16895
16896	shape, ok := value.(map[string]interface{})
16897	if !ok {
16898		return fmt.Errorf("unexpected JSON type %v", value)
16899	}
16900
16901	var sv *DeleteProfileOutput
16902	if *v == nil {
16903		sv = &DeleteProfileOutput{}
16904	} else {
16905		sv = *v
16906	}
16907
16908	for key, value := range shape {
16909		switch key {
16910		default:
16911			_, _ = key, value
16912
16913		}
16914	}
16915	*v = sv
16916	return nil
16917}
16918
16919func awsAwsjson11_deserializeOpDocumentDeleteRoomOutput(v **DeleteRoomOutput, value interface{}) error {
16920	if v == nil {
16921		return fmt.Errorf("unexpected nil of type %T", v)
16922	}
16923	if value == nil {
16924		return nil
16925	}
16926
16927	shape, ok := value.(map[string]interface{})
16928	if !ok {
16929		return fmt.Errorf("unexpected JSON type %v", value)
16930	}
16931
16932	var sv *DeleteRoomOutput
16933	if *v == nil {
16934		sv = &DeleteRoomOutput{}
16935	} else {
16936		sv = *v
16937	}
16938
16939	for key, value := range shape {
16940		switch key {
16941		default:
16942			_, _ = key, value
16943
16944		}
16945	}
16946	*v = sv
16947	return nil
16948}
16949
16950func awsAwsjson11_deserializeOpDocumentDeleteRoomSkillParameterOutput(v **DeleteRoomSkillParameterOutput, value interface{}) error {
16951	if v == nil {
16952		return fmt.Errorf("unexpected nil of type %T", v)
16953	}
16954	if value == nil {
16955		return nil
16956	}
16957
16958	shape, ok := value.(map[string]interface{})
16959	if !ok {
16960		return fmt.Errorf("unexpected JSON type %v", value)
16961	}
16962
16963	var sv *DeleteRoomSkillParameterOutput
16964	if *v == nil {
16965		sv = &DeleteRoomSkillParameterOutput{}
16966	} else {
16967		sv = *v
16968	}
16969
16970	for key, value := range shape {
16971		switch key {
16972		default:
16973			_, _ = key, value
16974
16975		}
16976	}
16977	*v = sv
16978	return nil
16979}
16980
16981func awsAwsjson11_deserializeOpDocumentDeleteSkillAuthorizationOutput(v **DeleteSkillAuthorizationOutput, value interface{}) error {
16982	if v == nil {
16983		return fmt.Errorf("unexpected nil of type %T", v)
16984	}
16985	if value == nil {
16986		return nil
16987	}
16988
16989	shape, ok := value.(map[string]interface{})
16990	if !ok {
16991		return fmt.Errorf("unexpected JSON type %v", value)
16992	}
16993
16994	var sv *DeleteSkillAuthorizationOutput
16995	if *v == nil {
16996		sv = &DeleteSkillAuthorizationOutput{}
16997	} else {
16998		sv = *v
16999	}
17000
17001	for key, value := range shape {
17002		switch key {
17003		default:
17004			_, _ = key, value
17005
17006		}
17007	}
17008	*v = sv
17009	return nil
17010}
17011
17012func awsAwsjson11_deserializeOpDocumentDeleteSkillGroupOutput(v **DeleteSkillGroupOutput, value interface{}) error {
17013	if v == nil {
17014		return fmt.Errorf("unexpected nil of type %T", v)
17015	}
17016	if value == nil {
17017		return nil
17018	}
17019
17020	shape, ok := value.(map[string]interface{})
17021	if !ok {
17022		return fmt.Errorf("unexpected JSON type %v", value)
17023	}
17024
17025	var sv *DeleteSkillGroupOutput
17026	if *v == nil {
17027		sv = &DeleteSkillGroupOutput{}
17028	} else {
17029		sv = *v
17030	}
17031
17032	for key, value := range shape {
17033		switch key {
17034		default:
17035			_, _ = key, value
17036
17037		}
17038	}
17039	*v = sv
17040	return nil
17041}
17042
17043func awsAwsjson11_deserializeOpDocumentDeleteUserOutput(v **DeleteUserOutput, value interface{}) error {
17044	if v == nil {
17045		return fmt.Errorf("unexpected nil of type %T", v)
17046	}
17047	if value == nil {
17048		return nil
17049	}
17050
17051	shape, ok := value.(map[string]interface{})
17052	if !ok {
17053		return fmt.Errorf("unexpected JSON type %v", value)
17054	}
17055
17056	var sv *DeleteUserOutput
17057	if *v == nil {
17058		sv = &DeleteUserOutput{}
17059	} else {
17060		sv = *v
17061	}
17062
17063	for key, value := range shape {
17064		switch key {
17065		default:
17066			_, _ = key, value
17067
17068		}
17069	}
17070	*v = sv
17071	return nil
17072}
17073
17074func awsAwsjson11_deserializeOpDocumentDisassociateContactFromAddressBookOutput(v **DisassociateContactFromAddressBookOutput, value interface{}) error {
17075	if v == nil {
17076		return fmt.Errorf("unexpected nil of type %T", v)
17077	}
17078	if value == nil {
17079		return nil
17080	}
17081
17082	shape, ok := value.(map[string]interface{})
17083	if !ok {
17084		return fmt.Errorf("unexpected JSON type %v", value)
17085	}
17086
17087	var sv *DisassociateContactFromAddressBookOutput
17088	if *v == nil {
17089		sv = &DisassociateContactFromAddressBookOutput{}
17090	} else {
17091		sv = *v
17092	}
17093
17094	for key, value := range shape {
17095		switch key {
17096		default:
17097			_, _ = key, value
17098
17099		}
17100	}
17101	*v = sv
17102	return nil
17103}
17104
17105func awsAwsjson11_deserializeOpDocumentDisassociateDeviceFromRoomOutput(v **DisassociateDeviceFromRoomOutput, value interface{}) error {
17106	if v == nil {
17107		return fmt.Errorf("unexpected nil of type %T", v)
17108	}
17109	if value == nil {
17110		return nil
17111	}
17112
17113	shape, ok := value.(map[string]interface{})
17114	if !ok {
17115		return fmt.Errorf("unexpected JSON type %v", value)
17116	}
17117
17118	var sv *DisassociateDeviceFromRoomOutput
17119	if *v == nil {
17120		sv = &DisassociateDeviceFromRoomOutput{}
17121	} else {
17122		sv = *v
17123	}
17124
17125	for key, value := range shape {
17126		switch key {
17127		default:
17128			_, _ = key, value
17129
17130		}
17131	}
17132	*v = sv
17133	return nil
17134}
17135
17136func awsAwsjson11_deserializeOpDocumentDisassociateSkillFromSkillGroupOutput(v **DisassociateSkillFromSkillGroupOutput, value interface{}) error {
17137	if v == nil {
17138		return fmt.Errorf("unexpected nil of type %T", v)
17139	}
17140	if value == nil {
17141		return nil
17142	}
17143
17144	shape, ok := value.(map[string]interface{})
17145	if !ok {
17146		return fmt.Errorf("unexpected JSON type %v", value)
17147	}
17148
17149	var sv *DisassociateSkillFromSkillGroupOutput
17150	if *v == nil {
17151		sv = &DisassociateSkillFromSkillGroupOutput{}
17152	} else {
17153		sv = *v
17154	}
17155
17156	for key, value := range shape {
17157		switch key {
17158		default:
17159			_, _ = key, value
17160
17161		}
17162	}
17163	*v = sv
17164	return nil
17165}
17166
17167func awsAwsjson11_deserializeOpDocumentDisassociateSkillFromUsersOutput(v **DisassociateSkillFromUsersOutput, value interface{}) error {
17168	if v == nil {
17169		return fmt.Errorf("unexpected nil of type %T", v)
17170	}
17171	if value == nil {
17172		return nil
17173	}
17174
17175	shape, ok := value.(map[string]interface{})
17176	if !ok {
17177		return fmt.Errorf("unexpected JSON type %v", value)
17178	}
17179
17180	var sv *DisassociateSkillFromUsersOutput
17181	if *v == nil {
17182		sv = &DisassociateSkillFromUsersOutput{}
17183	} else {
17184		sv = *v
17185	}
17186
17187	for key, value := range shape {
17188		switch key {
17189		default:
17190			_, _ = key, value
17191
17192		}
17193	}
17194	*v = sv
17195	return nil
17196}
17197
17198func awsAwsjson11_deserializeOpDocumentDisassociateSkillGroupFromRoomOutput(v **DisassociateSkillGroupFromRoomOutput, value interface{}) error {
17199	if v == nil {
17200		return fmt.Errorf("unexpected nil of type %T", v)
17201	}
17202	if value == nil {
17203		return nil
17204	}
17205
17206	shape, ok := value.(map[string]interface{})
17207	if !ok {
17208		return fmt.Errorf("unexpected JSON type %v", value)
17209	}
17210
17211	var sv *DisassociateSkillGroupFromRoomOutput
17212	if *v == nil {
17213		sv = &DisassociateSkillGroupFromRoomOutput{}
17214	} else {
17215		sv = *v
17216	}
17217
17218	for key, value := range shape {
17219		switch key {
17220		default:
17221			_, _ = key, value
17222
17223		}
17224	}
17225	*v = sv
17226	return nil
17227}
17228
17229func awsAwsjson11_deserializeOpDocumentForgetSmartHomeAppliancesOutput(v **ForgetSmartHomeAppliancesOutput, value interface{}) error {
17230	if v == nil {
17231		return fmt.Errorf("unexpected nil of type %T", v)
17232	}
17233	if value == nil {
17234		return nil
17235	}
17236
17237	shape, ok := value.(map[string]interface{})
17238	if !ok {
17239		return fmt.Errorf("unexpected JSON type %v", value)
17240	}
17241
17242	var sv *ForgetSmartHomeAppliancesOutput
17243	if *v == nil {
17244		sv = &ForgetSmartHomeAppliancesOutput{}
17245	} else {
17246		sv = *v
17247	}
17248
17249	for key, value := range shape {
17250		switch key {
17251		default:
17252			_, _ = key, value
17253
17254		}
17255	}
17256	*v = sv
17257	return nil
17258}
17259
17260func awsAwsjson11_deserializeOpDocumentGetAddressBookOutput(v **GetAddressBookOutput, value interface{}) error {
17261	if v == nil {
17262		return fmt.Errorf("unexpected nil of type %T", v)
17263	}
17264	if value == nil {
17265		return nil
17266	}
17267
17268	shape, ok := value.(map[string]interface{})
17269	if !ok {
17270		return fmt.Errorf("unexpected JSON type %v", value)
17271	}
17272
17273	var sv *GetAddressBookOutput
17274	if *v == nil {
17275		sv = &GetAddressBookOutput{}
17276	} else {
17277		sv = *v
17278	}
17279
17280	for key, value := range shape {
17281		switch key {
17282		case "AddressBook":
17283			if err := awsAwsjson11_deserializeDocumentAddressBook(&sv.AddressBook, value); err != nil {
17284				return err
17285			}
17286
17287		default:
17288			_, _ = key, value
17289
17290		}
17291	}
17292	*v = sv
17293	return nil
17294}
17295
17296func awsAwsjson11_deserializeOpDocumentGetConferencePreferenceOutput(v **GetConferencePreferenceOutput, value interface{}) error {
17297	if v == nil {
17298		return fmt.Errorf("unexpected nil of type %T", v)
17299	}
17300	if value == nil {
17301		return nil
17302	}
17303
17304	shape, ok := value.(map[string]interface{})
17305	if !ok {
17306		return fmt.Errorf("unexpected JSON type %v", value)
17307	}
17308
17309	var sv *GetConferencePreferenceOutput
17310	if *v == nil {
17311		sv = &GetConferencePreferenceOutput{}
17312	} else {
17313		sv = *v
17314	}
17315
17316	for key, value := range shape {
17317		switch key {
17318		case "Preference":
17319			if err := awsAwsjson11_deserializeDocumentConferencePreference(&sv.Preference, value); err != nil {
17320				return err
17321			}
17322
17323		default:
17324			_, _ = key, value
17325
17326		}
17327	}
17328	*v = sv
17329	return nil
17330}
17331
17332func awsAwsjson11_deserializeOpDocumentGetConferenceProviderOutput(v **GetConferenceProviderOutput, value interface{}) error {
17333	if v == nil {
17334		return fmt.Errorf("unexpected nil of type %T", v)
17335	}
17336	if value == nil {
17337		return nil
17338	}
17339
17340	shape, ok := value.(map[string]interface{})
17341	if !ok {
17342		return fmt.Errorf("unexpected JSON type %v", value)
17343	}
17344
17345	var sv *GetConferenceProviderOutput
17346	if *v == nil {
17347		sv = &GetConferenceProviderOutput{}
17348	} else {
17349		sv = *v
17350	}
17351
17352	for key, value := range shape {
17353		switch key {
17354		case "ConferenceProvider":
17355			if err := awsAwsjson11_deserializeDocumentConferenceProvider(&sv.ConferenceProvider, value); err != nil {
17356				return err
17357			}
17358
17359		default:
17360			_, _ = key, value
17361
17362		}
17363	}
17364	*v = sv
17365	return nil
17366}
17367
17368func awsAwsjson11_deserializeOpDocumentGetContactOutput(v **GetContactOutput, value interface{}) error {
17369	if v == nil {
17370		return fmt.Errorf("unexpected nil of type %T", v)
17371	}
17372	if value == nil {
17373		return nil
17374	}
17375
17376	shape, ok := value.(map[string]interface{})
17377	if !ok {
17378		return fmt.Errorf("unexpected JSON type %v", value)
17379	}
17380
17381	var sv *GetContactOutput
17382	if *v == nil {
17383		sv = &GetContactOutput{}
17384	} else {
17385		sv = *v
17386	}
17387
17388	for key, value := range shape {
17389		switch key {
17390		case "Contact":
17391			if err := awsAwsjson11_deserializeDocumentContact(&sv.Contact, value); err != nil {
17392				return err
17393			}
17394
17395		default:
17396			_, _ = key, value
17397
17398		}
17399	}
17400	*v = sv
17401	return nil
17402}
17403
17404func awsAwsjson11_deserializeOpDocumentGetDeviceOutput(v **GetDeviceOutput, value interface{}) error {
17405	if v == nil {
17406		return fmt.Errorf("unexpected nil of type %T", v)
17407	}
17408	if value == nil {
17409		return nil
17410	}
17411
17412	shape, ok := value.(map[string]interface{})
17413	if !ok {
17414		return fmt.Errorf("unexpected JSON type %v", value)
17415	}
17416
17417	var sv *GetDeviceOutput
17418	if *v == nil {
17419		sv = &GetDeviceOutput{}
17420	} else {
17421		sv = *v
17422	}
17423
17424	for key, value := range shape {
17425		switch key {
17426		case "Device":
17427			if err := awsAwsjson11_deserializeDocumentDevice(&sv.Device, value); err != nil {
17428				return err
17429			}
17430
17431		default:
17432			_, _ = key, value
17433
17434		}
17435	}
17436	*v = sv
17437	return nil
17438}
17439
17440func awsAwsjson11_deserializeOpDocumentGetGatewayGroupOutput(v **GetGatewayGroupOutput, value interface{}) error {
17441	if v == nil {
17442		return fmt.Errorf("unexpected nil of type %T", v)
17443	}
17444	if value == nil {
17445		return nil
17446	}
17447
17448	shape, ok := value.(map[string]interface{})
17449	if !ok {
17450		return fmt.Errorf("unexpected JSON type %v", value)
17451	}
17452
17453	var sv *GetGatewayGroupOutput
17454	if *v == nil {
17455		sv = &GetGatewayGroupOutput{}
17456	} else {
17457		sv = *v
17458	}
17459
17460	for key, value := range shape {
17461		switch key {
17462		case "GatewayGroup":
17463			if err := awsAwsjson11_deserializeDocumentGatewayGroup(&sv.GatewayGroup, value); err != nil {
17464				return err
17465			}
17466
17467		default:
17468			_, _ = key, value
17469
17470		}
17471	}
17472	*v = sv
17473	return nil
17474}
17475
17476func awsAwsjson11_deserializeOpDocumentGetGatewayOutput(v **GetGatewayOutput, value interface{}) error {
17477	if v == nil {
17478		return fmt.Errorf("unexpected nil of type %T", v)
17479	}
17480	if value == nil {
17481		return nil
17482	}
17483
17484	shape, ok := value.(map[string]interface{})
17485	if !ok {
17486		return fmt.Errorf("unexpected JSON type %v", value)
17487	}
17488
17489	var sv *GetGatewayOutput
17490	if *v == nil {
17491		sv = &GetGatewayOutput{}
17492	} else {
17493		sv = *v
17494	}
17495
17496	for key, value := range shape {
17497		switch key {
17498		case "Gateway":
17499			if err := awsAwsjson11_deserializeDocumentGateway(&sv.Gateway, value); err != nil {
17500				return err
17501			}
17502
17503		default:
17504			_, _ = key, value
17505
17506		}
17507	}
17508	*v = sv
17509	return nil
17510}
17511
17512func awsAwsjson11_deserializeOpDocumentGetInvitationConfigurationOutput(v **GetInvitationConfigurationOutput, value interface{}) error {
17513	if v == nil {
17514		return fmt.Errorf("unexpected nil of type %T", v)
17515	}
17516	if value == nil {
17517		return nil
17518	}
17519
17520	shape, ok := value.(map[string]interface{})
17521	if !ok {
17522		return fmt.Errorf("unexpected JSON type %v", value)
17523	}
17524
17525	var sv *GetInvitationConfigurationOutput
17526	if *v == nil {
17527		sv = &GetInvitationConfigurationOutput{}
17528	} else {
17529		sv = *v
17530	}
17531
17532	for key, value := range shape {
17533		switch key {
17534		case "ContactEmail":
17535			if value != nil {
17536				jtv, ok := value.(string)
17537				if !ok {
17538					return fmt.Errorf("expected Email to be of type string, got %T instead", value)
17539				}
17540				sv.ContactEmail = ptr.String(jtv)
17541			}
17542
17543		case "OrganizationName":
17544			if value != nil {
17545				jtv, ok := value.(string)
17546				if !ok {
17547					return fmt.Errorf("expected OrganizationName to be of type string, got %T instead", value)
17548				}
17549				sv.OrganizationName = ptr.String(jtv)
17550			}
17551
17552		case "PrivateSkillIds":
17553			if err := awsAwsjson11_deserializeDocumentShortSkillIdList(&sv.PrivateSkillIds, value); err != nil {
17554				return err
17555			}
17556
17557		default:
17558			_, _ = key, value
17559
17560		}
17561	}
17562	*v = sv
17563	return nil
17564}
17565
17566func awsAwsjson11_deserializeOpDocumentGetNetworkProfileOutput(v **GetNetworkProfileOutput, value interface{}) error {
17567	if v == nil {
17568		return fmt.Errorf("unexpected nil of type %T", v)
17569	}
17570	if value == nil {
17571		return nil
17572	}
17573
17574	shape, ok := value.(map[string]interface{})
17575	if !ok {
17576		return fmt.Errorf("unexpected JSON type %v", value)
17577	}
17578
17579	var sv *GetNetworkProfileOutput
17580	if *v == nil {
17581		sv = &GetNetworkProfileOutput{}
17582	} else {
17583		sv = *v
17584	}
17585
17586	for key, value := range shape {
17587		switch key {
17588		case "NetworkProfile":
17589			if err := awsAwsjson11_deserializeDocumentNetworkProfile(&sv.NetworkProfile, value); err != nil {
17590				return err
17591			}
17592
17593		default:
17594			_, _ = key, value
17595
17596		}
17597	}
17598	*v = sv
17599	return nil
17600}
17601
17602func awsAwsjson11_deserializeOpDocumentGetProfileOutput(v **GetProfileOutput, value interface{}) error {
17603	if v == nil {
17604		return fmt.Errorf("unexpected nil of type %T", v)
17605	}
17606	if value == nil {
17607		return nil
17608	}
17609
17610	shape, ok := value.(map[string]interface{})
17611	if !ok {
17612		return fmt.Errorf("unexpected JSON type %v", value)
17613	}
17614
17615	var sv *GetProfileOutput
17616	if *v == nil {
17617		sv = &GetProfileOutput{}
17618	} else {
17619		sv = *v
17620	}
17621
17622	for key, value := range shape {
17623		switch key {
17624		case "Profile":
17625			if err := awsAwsjson11_deserializeDocumentProfile(&sv.Profile, value); err != nil {
17626				return err
17627			}
17628
17629		default:
17630			_, _ = key, value
17631
17632		}
17633	}
17634	*v = sv
17635	return nil
17636}
17637
17638func awsAwsjson11_deserializeOpDocumentGetRoomOutput(v **GetRoomOutput, value interface{}) error {
17639	if v == nil {
17640		return fmt.Errorf("unexpected nil of type %T", v)
17641	}
17642	if value == nil {
17643		return nil
17644	}
17645
17646	shape, ok := value.(map[string]interface{})
17647	if !ok {
17648		return fmt.Errorf("unexpected JSON type %v", value)
17649	}
17650
17651	var sv *GetRoomOutput
17652	if *v == nil {
17653		sv = &GetRoomOutput{}
17654	} else {
17655		sv = *v
17656	}
17657
17658	for key, value := range shape {
17659		switch key {
17660		case "Room":
17661			if err := awsAwsjson11_deserializeDocumentRoom(&sv.Room, value); err != nil {
17662				return err
17663			}
17664
17665		default:
17666			_, _ = key, value
17667
17668		}
17669	}
17670	*v = sv
17671	return nil
17672}
17673
17674func awsAwsjson11_deserializeOpDocumentGetRoomSkillParameterOutput(v **GetRoomSkillParameterOutput, value interface{}) error {
17675	if v == nil {
17676		return fmt.Errorf("unexpected nil of type %T", v)
17677	}
17678	if value == nil {
17679		return nil
17680	}
17681
17682	shape, ok := value.(map[string]interface{})
17683	if !ok {
17684		return fmt.Errorf("unexpected JSON type %v", value)
17685	}
17686
17687	var sv *GetRoomSkillParameterOutput
17688	if *v == nil {
17689		sv = &GetRoomSkillParameterOutput{}
17690	} else {
17691		sv = *v
17692	}
17693
17694	for key, value := range shape {
17695		switch key {
17696		case "RoomSkillParameter":
17697			if err := awsAwsjson11_deserializeDocumentRoomSkillParameter(&sv.RoomSkillParameter, value); err != nil {
17698				return err
17699			}
17700
17701		default:
17702			_, _ = key, value
17703
17704		}
17705	}
17706	*v = sv
17707	return nil
17708}
17709
17710func awsAwsjson11_deserializeOpDocumentGetSkillGroupOutput(v **GetSkillGroupOutput, value interface{}) error {
17711	if v == nil {
17712		return fmt.Errorf("unexpected nil of type %T", v)
17713	}
17714	if value == nil {
17715		return nil
17716	}
17717
17718	shape, ok := value.(map[string]interface{})
17719	if !ok {
17720		return fmt.Errorf("unexpected JSON type %v", value)
17721	}
17722
17723	var sv *GetSkillGroupOutput
17724	if *v == nil {
17725		sv = &GetSkillGroupOutput{}
17726	} else {
17727		sv = *v
17728	}
17729
17730	for key, value := range shape {
17731		switch key {
17732		case "SkillGroup":
17733			if err := awsAwsjson11_deserializeDocumentSkillGroup(&sv.SkillGroup, value); err != nil {
17734				return err
17735			}
17736
17737		default:
17738			_, _ = key, value
17739
17740		}
17741	}
17742	*v = sv
17743	return nil
17744}
17745
17746func awsAwsjson11_deserializeOpDocumentListBusinessReportSchedulesOutput(v **ListBusinessReportSchedulesOutput, value interface{}) error {
17747	if v == nil {
17748		return fmt.Errorf("unexpected nil of type %T", v)
17749	}
17750	if value == nil {
17751		return nil
17752	}
17753
17754	shape, ok := value.(map[string]interface{})
17755	if !ok {
17756		return fmt.Errorf("unexpected JSON type %v", value)
17757	}
17758
17759	var sv *ListBusinessReportSchedulesOutput
17760	if *v == nil {
17761		sv = &ListBusinessReportSchedulesOutput{}
17762	} else {
17763		sv = *v
17764	}
17765
17766	for key, value := range shape {
17767		switch key {
17768		case "BusinessReportSchedules":
17769			if err := awsAwsjson11_deserializeDocumentBusinessReportScheduleList(&sv.BusinessReportSchedules, value); err != nil {
17770				return err
17771			}
17772
17773		case "NextToken":
17774			if value != nil {
17775				jtv, ok := value.(string)
17776				if !ok {
17777					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
17778				}
17779				sv.NextToken = ptr.String(jtv)
17780			}
17781
17782		default:
17783			_, _ = key, value
17784
17785		}
17786	}
17787	*v = sv
17788	return nil
17789}
17790
17791func awsAwsjson11_deserializeOpDocumentListConferenceProvidersOutput(v **ListConferenceProvidersOutput, value interface{}) error {
17792	if v == nil {
17793		return fmt.Errorf("unexpected nil of type %T", v)
17794	}
17795	if value == nil {
17796		return nil
17797	}
17798
17799	shape, ok := value.(map[string]interface{})
17800	if !ok {
17801		return fmt.Errorf("unexpected JSON type %v", value)
17802	}
17803
17804	var sv *ListConferenceProvidersOutput
17805	if *v == nil {
17806		sv = &ListConferenceProvidersOutput{}
17807	} else {
17808		sv = *v
17809	}
17810
17811	for key, value := range shape {
17812		switch key {
17813		case "ConferenceProviders":
17814			if err := awsAwsjson11_deserializeDocumentConferenceProvidersList(&sv.ConferenceProviders, value); err != nil {
17815				return err
17816			}
17817
17818		case "NextToken":
17819			if value != nil {
17820				jtv, ok := value.(string)
17821				if !ok {
17822					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
17823				}
17824				sv.NextToken = ptr.String(jtv)
17825			}
17826
17827		default:
17828			_, _ = key, value
17829
17830		}
17831	}
17832	*v = sv
17833	return nil
17834}
17835
17836func awsAwsjson11_deserializeOpDocumentListDeviceEventsOutput(v **ListDeviceEventsOutput, value interface{}) error {
17837	if v == nil {
17838		return fmt.Errorf("unexpected nil of type %T", v)
17839	}
17840	if value == nil {
17841		return nil
17842	}
17843
17844	shape, ok := value.(map[string]interface{})
17845	if !ok {
17846		return fmt.Errorf("unexpected JSON type %v", value)
17847	}
17848
17849	var sv *ListDeviceEventsOutput
17850	if *v == nil {
17851		sv = &ListDeviceEventsOutput{}
17852	} else {
17853		sv = *v
17854	}
17855
17856	for key, value := range shape {
17857		switch key {
17858		case "DeviceEvents":
17859			if err := awsAwsjson11_deserializeDocumentDeviceEventList(&sv.DeviceEvents, value); err != nil {
17860				return err
17861			}
17862
17863		case "NextToken":
17864			if value != nil {
17865				jtv, ok := value.(string)
17866				if !ok {
17867					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
17868				}
17869				sv.NextToken = ptr.String(jtv)
17870			}
17871
17872		default:
17873			_, _ = key, value
17874
17875		}
17876	}
17877	*v = sv
17878	return nil
17879}
17880
17881func awsAwsjson11_deserializeOpDocumentListGatewayGroupsOutput(v **ListGatewayGroupsOutput, value interface{}) error {
17882	if v == nil {
17883		return fmt.Errorf("unexpected nil of type %T", v)
17884	}
17885	if value == nil {
17886		return nil
17887	}
17888
17889	shape, ok := value.(map[string]interface{})
17890	if !ok {
17891		return fmt.Errorf("unexpected JSON type %v", value)
17892	}
17893
17894	var sv *ListGatewayGroupsOutput
17895	if *v == nil {
17896		sv = &ListGatewayGroupsOutput{}
17897	} else {
17898		sv = *v
17899	}
17900
17901	for key, value := range shape {
17902		switch key {
17903		case "GatewayGroups":
17904			if err := awsAwsjson11_deserializeDocumentGatewayGroupSummaries(&sv.GatewayGroups, value); err != nil {
17905				return err
17906			}
17907
17908		case "NextToken":
17909			if value != nil {
17910				jtv, ok := value.(string)
17911				if !ok {
17912					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
17913				}
17914				sv.NextToken = ptr.String(jtv)
17915			}
17916
17917		default:
17918			_, _ = key, value
17919
17920		}
17921	}
17922	*v = sv
17923	return nil
17924}
17925
17926func awsAwsjson11_deserializeOpDocumentListGatewaysOutput(v **ListGatewaysOutput, value interface{}) error {
17927	if v == nil {
17928		return fmt.Errorf("unexpected nil of type %T", v)
17929	}
17930	if value == nil {
17931		return nil
17932	}
17933
17934	shape, ok := value.(map[string]interface{})
17935	if !ok {
17936		return fmt.Errorf("unexpected JSON type %v", value)
17937	}
17938
17939	var sv *ListGatewaysOutput
17940	if *v == nil {
17941		sv = &ListGatewaysOutput{}
17942	} else {
17943		sv = *v
17944	}
17945
17946	for key, value := range shape {
17947		switch key {
17948		case "Gateways":
17949			if err := awsAwsjson11_deserializeDocumentGatewaySummaries(&sv.Gateways, value); err != nil {
17950				return err
17951			}
17952
17953		case "NextToken":
17954			if value != nil {
17955				jtv, ok := value.(string)
17956				if !ok {
17957					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
17958				}
17959				sv.NextToken = ptr.String(jtv)
17960			}
17961
17962		default:
17963			_, _ = key, value
17964
17965		}
17966	}
17967	*v = sv
17968	return nil
17969}
17970
17971func awsAwsjson11_deserializeOpDocumentListSkillsOutput(v **ListSkillsOutput, value interface{}) error {
17972	if v == nil {
17973		return fmt.Errorf("unexpected nil of type %T", v)
17974	}
17975	if value == nil {
17976		return nil
17977	}
17978
17979	shape, ok := value.(map[string]interface{})
17980	if !ok {
17981		return fmt.Errorf("unexpected JSON type %v", value)
17982	}
17983
17984	var sv *ListSkillsOutput
17985	if *v == nil {
17986		sv = &ListSkillsOutput{}
17987	} else {
17988		sv = *v
17989	}
17990
17991	for key, value := range shape {
17992		switch key {
17993		case "NextToken":
17994			if value != nil {
17995				jtv, ok := value.(string)
17996				if !ok {
17997					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
17998				}
17999				sv.NextToken = ptr.String(jtv)
18000			}
18001
18002		case "SkillSummaries":
18003			if err := awsAwsjson11_deserializeDocumentSkillSummaryList(&sv.SkillSummaries, value); err != nil {
18004				return err
18005			}
18006
18007		default:
18008			_, _ = key, value
18009
18010		}
18011	}
18012	*v = sv
18013	return nil
18014}
18015
18016func awsAwsjson11_deserializeOpDocumentListSkillsStoreCategoriesOutput(v **ListSkillsStoreCategoriesOutput, value interface{}) error {
18017	if v == nil {
18018		return fmt.Errorf("unexpected nil of type %T", v)
18019	}
18020	if value == nil {
18021		return nil
18022	}
18023
18024	shape, ok := value.(map[string]interface{})
18025	if !ok {
18026		return fmt.Errorf("unexpected JSON type %v", value)
18027	}
18028
18029	var sv *ListSkillsStoreCategoriesOutput
18030	if *v == nil {
18031		sv = &ListSkillsStoreCategoriesOutput{}
18032	} else {
18033		sv = *v
18034	}
18035
18036	for key, value := range shape {
18037		switch key {
18038		case "CategoryList":
18039			if err := awsAwsjson11_deserializeDocumentCategoryList(&sv.CategoryList, value); err != nil {
18040				return err
18041			}
18042
18043		case "NextToken":
18044			if value != nil {
18045				jtv, ok := value.(string)
18046				if !ok {
18047					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18048				}
18049				sv.NextToken = ptr.String(jtv)
18050			}
18051
18052		default:
18053			_, _ = key, value
18054
18055		}
18056	}
18057	*v = sv
18058	return nil
18059}
18060
18061func awsAwsjson11_deserializeOpDocumentListSkillsStoreSkillsByCategoryOutput(v **ListSkillsStoreSkillsByCategoryOutput, value interface{}) error {
18062	if v == nil {
18063		return fmt.Errorf("unexpected nil of type %T", v)
18064	}
18065	if value == nil {
18066		return nil
18067	}
18068
18069	shape, ok := value.(map[string]interface{})
18070	if !ok {
18071		return fmt.Errorf("unexpected JSON type %v", value)
18072	}
18073
18074	var sv *ListSkillsStoreSkillsByCategoryOutput
18075	if *v == nil {
18076		sv = &ListSkillsStoreSkillsByCategoryOutput{}
18077	} else {
18078		sv = *v
18079	}
18080
18081	for key, value := range shape {
18082		switch key {
18083		case "NextToken":
18084			if value != nil {
18085				jtv, ok := value.(string)
18086				if !ok {
18087					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18088				}
18089				sv.NextToken = ptr.String(jtv)
18090			}
18091
18092		case "SkillsStoreSkills":
18093			if err := awsAwsjson11_deserializeDocumentSkillsStoreSkillList(&sv.SkillsStoreSkills, value); err != nil {
18094				return err
18095			}
18096
18097		default:
18098			_, _ = key, value
18099
18100		}
18101	}
18102	*v = sv
18103	return nil
18104}
18105
18106func awsAwsjson11_deserializeOpDocumentListSmartHomeAppliancesOutput(v **ListSmartHomeAppliancesOutput, value interface{}) error {
18107	if v == nil {
18108		return fmt.Errorf("unexpected nil of type %T", v)
18109	}
18110	if value == nil {
18111		return nil
18112	}
18113
18114	shape, ok := value.(map[string]interface{})
18115	if !ok {
18116		return fmt.Errorf("unexpected JSON type %v", value)
18117	}
18118
18119	var sv *ListSmartHomeAppliancesOutput
18120	if *v == nil {
18121		sv = &ListSmartHomeAppliancesOutput{}
18122	} else {
18123		sv = *v
18124	}
18125
18126	for key, value := range shape {
18127		switch key {
18128		case "NextToken":
18129			if value != nil {
18130				jtv, ok := value.(string)
18131				if !ok {
18132					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18133				}
18134				sv.NextToken = ptr.String(jtv)
18135			}
18136
18137		case "SmartHomeAppliances":
18138			if err := awsAwsjson11_deserializeDocumentSmartHomeApplianceList(&sv.SmartHomeAppliances, value); err != nil {
18139				return err
18140			}
18141
18142		default:
18143			_, _ = key, value
18144
18145		}
18146	}
18147	*v = sv
18148	return nil
18149}
18150
18151func awsAwsjson11_deserializeOpDocumentListTagsOutput(v **ListTagsOutput, value interface{}) error {
18152	if v == nil {
18153		return fmt.Errorf("unexpected nil of type %T", v)
18154	}
18155	if value == nil {
18156		return nil
18157	}
18158
18159	shape, ok := value.(map[string]interface{})
18160	if !ok {
18161		return fmt.Errorf("unexpected JSON type %v", value)
18162	}
18163
18164	var sv *ListTagsOutput
18165	if *v == nil {
18166		sv = &ListTagsOutput{}
18167	} else {
18168		sv = *v
18169	}
18170
18171	for key, value := range shape {
18172		switch key {
18173		case "NextToken":
18174			if value != nil {
18175				jtv, ok := value.(string)
18176				if !ok {
18177					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18178				}
18179				sv.NextToken = ptr.String(jtv)
18180			}
18181
18182		case "Tags":
18183			if err := awsAwsjson11_deserializeDocumentTagList(&sv.Tags, value); err != nil {
18184				return err
18185			}
18186
18187		default:
18188			_, _ = key, value
18189
18190		}
18191	}
18192	*v = sv
18193	return nil
18194}
18195
18196func awsAwsjson11_deserializeOpDocumentPutConferencePreferenceOutput(v **PutConferencePreferenceOutput, value interface{}) error {
18197	if v == nil {
18198		return fmt.Errorf("unexpected nil of type %T", v)
18199	}
18200	if value == nil {
18201		return nil
18202	}
18203
18204	shape, ok := value.(map[string]interface{})
18205	if !ok {
18206		return fmt.Errorf("unexpected JSON type %v", value)
18207	}
18208
18209	var sv *PutConferencePreferenceOutput
18210	if *v == nil {
18211		sv = &PutConferencePreferenceOutput{}
18212	} else {
18213		sv = *v
18214	}
18215
18216	for key, value := range shape {
18217		switch key {
18218		default:
18219			_, _ = key, value
18220
18221		}
18222	}
18223	*v = sv
18224	return nil
18225}
18226
18227func awsAwsjson11_deserializeOpDocumentPutInvitationConfigurationOutput(v **PutInvitationConfigurationOutput, value interface{}) error {
18228	if v == nil {
18229		return fmt.Errorf("unexpected nil of type %T", v)
18230	}
18231	if value == nil {
18232		return nil
18233	}
18234
18235	shape, ok := value.(map[string]interface{})
18236	if !ok {
18237		return fmt.Errorf("unexpected JSON type %v", value)
18238	}
18239
18240	var sv *PutInvitationConfigurationOutput
18241	if *v == nil {
18242		sv = &PutInvitationConfigurationOutput{}
18243	} else {
18244		sv = *v
18245	}
18246
18247	for key, value := range shape {
18248		switch key {
18249		default:
18250			_, _ = key, value
18251
18252		}
18253	}
18254	*v = sv
18255	return nil
18256}
18257
18258func awsAwsjson11_deserializeOpDocumentPutRoomSkillParameterOutput(v **PutRoomSkillParameterOutput, value interface{}) error {
18259	if v == nil {
18260		return fmt.Errorf("unexpected nil of type %T", v)
18261	}
18262	if value == nil {
18263		return nil
18264	}
18265
18266	shape, ok := value.(map[string]interface{})
18267	if !ok {
18268		return fmt.Errorf("unexpected JSON type %v", value)
18269	}
18270
18271	var sv *PutRoomSkillParameterOutput
18272	if *v == nil {
18273		sv = &PutRoomSkillParameterOutput{}
18274	} else {
18275		sv = *v
18276	}
18277
18278	for key, value := range shape {
18279		switch key {
18280		default:
18281			_, _ = key, value
18282
18283		}
18284	}
18285	*v = sv
18286	return nil
18287}
18288
18289func awsAwsjson11_deserializeOpDocumentPutSkillAuthorizationOutput(v **PutSkillAuthorizationOutput, value interface{}) error {
18290	if v == nil {
18291		return fmt.Errorf("unexpected nil of type %T", v)
18292	}
18293	if value == nil {
18294		return nil
18295	}
18296
18297	shape, ok := value.(map[string]interface{})
18298	if !ok {
18299		return fmt.Errorf("unexpected JSON type %v", value)
18300	}
18301
18302	var sv *PutSkillAuthorizationOutput
18303	if *v == nil {
18304		sv = &PutSkillAuthorizationOutput{}
18305	} else {
18306		sv = *v
18307	}
18308
18309	for key, value := range shape {
18310		switch key {
18311		default:
18312			_, _ = key, value
18313
18314		}
18315	}
18316	*v = sv
18317	return nil
18318}
18319
18320func awsAwsjson11_deserializeOpDocumentRegisterAVSDeviceOutput(v **RegisterAVSDeviceOutput, value interface{}) error {
18321	if v == nil {
18322		return fmt.Errorf("unexpected nil of type %T", v)
18323	}
18324	if value == nil {
18325		return nil
18326	}
18327
18328	shape, ok := value.(map[string]interface{})
18329	if !ok {
18330		return fmt.Errorf("unexpected JSON type %v", value)
18331	}
18332
18333	var sv *RegisterAVSDeviceOutput
18334	if *v == nil {
18335		sv = &RegisterAVSDeviceOutput{}
18336	} else {
18337		sv = *v
18338	}
18339
18340	for key, value := range shape {
18341		switch key {
18342		case "DeviceArn":
18343			if value != nil {
18344				jtv, ok := value.(string)
18345				if !ok {
18346					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
18347				}
18348				sv.DeviceArn = ptr.String(jtv)
18349			}
18350
18351		default:
18352			_, _ = key, value
18353
18354		}
18355	}
18356	*v = sv
18357	return nil
18358}
18359
18360func awsAwsjson11_deserializeOpDocumentRejectSkillOutput(v **RejectSkillOutput, value interface{}) error {
18361	if v == nil {
18362		return fmt.Errorf("unexpected nil of type %T", v)
18363	}
18364	if value == nil {
18365		return nil
18366	}
18367
18368	shape, ok := value.(map[string]interface{})
18369	if !ok {
18370		return fmt.Errorf("unexpected JSON type %v", value)
18371	}
18372
18373	var sv *RejectSkillOutput
18374	if *v == nil {
18375		sv = &RejectSkillOutput{}
18376	} else {
18377		sv = *v
18378	}
18379
18380	for key, value := range shape {
18381		switch key {
18382		default:
18383			_, _ = key, value
18384
18385		}
18386	}
18387	*v = sv
18388	return nil
18389}
18390
18391func awsAwsjson11_deserializeOpDocumentResolveRoomOutput(v **ResolveRoomOutput, value interface{}) error {
18392	if v == nil {
18393		return fmt.Errorf("unexpected nil of type %T", v)
18394	}
18395	if value == nil {
18396		return nil
18397	}
18398
18399	shape, ok := value.(map[string]interface{})
18400	if !ok {
18401		return fmt.Errorf("unexpected JSON type %v", value)
18402	}
18403
18404	var sv *ResolveRoomOutput
18405	if *v == nil {
18406		sv = &ResolveRoomOutput{}
18407	} else {
18408		sv = *v
18409	}
18410
18411	for key, value := range shape {
18412		switch key {
18413		case "RoomArn":
18414			if value != nil {
18415				jtv, ok := value.(string)
18416				if !ok {
18417					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
18418				}
18419				sv.RoomArn = ptr.String(jtv)
18420			}
18421
18422		case "RoomName":
18423			if value != nil {
18424				jtv, ok := value.(string)
18425				if !ok {
18426					return fmt.Errorf("expected RoomName to be of type string, got %T instead", value)
18427				}
18428				sv.RoomName = ptr.String(jtv)
18429			}
18430
18431		case "RoomSkillParameters":
18432			if err := awsAwsjson11_deserializeDocumentRoomSkillParameters(&sv.RoomSkillParameters, value); err != nil {
18433				return err
18434			}
18435
18436		default:
18437			_, _ = key, value
18438
18439		}
18440	}
18441	*v = sv
18442	return nil
18443}
18444
18445func awsAwsjson11_deserializeOpDocumentRevokeInvitationOutput(v **RevokeInvitationOutput, value interface{}) error {
18446	if v == nil {
18447		return fmt.Errorf("unexpected nil of type %T", v)
18448	}
18449	if value == nil {
18450		return nil
18451	}
18452
18453	shape, ok := value.(map[string]interface{})
18454	if !ok {
18455		return fmt.Errorf("unexpected JSON type %v", value)
18456	}
18457
18458	var sv *RevokeInvitationOutput
18459	if *v == nil {
18460		sv = &RevokeInvitationOutput{}
18461	} else {
18462		sv = *v
18463	}
18464
18465	for key, value := range shape {
18466		switch key {
18467		default:
18468			_, _ = key, value
18469
18470		}
18471	}
18472	*v = sv
18473	return nil
18474}
18475
18476func awsAwsjson11_deserializeOpDocumentSearchAddressBooksOutput(v **SearchAddressBooksOutput, value interface{}) error {
18477	if v == nil {
18478		return fmt.Errorf("unexpected nil of type %T", v)
18479	}
18480	if value == nil {
18481		return nil
18482	}
18483
18484	shape, ok := value.(map[string]interface{})
18485	if !ok {
18486		return fmt.Errorf("unexpected JSON type %v", value)
18487	}
18488
18489	var sv *SearchAddressBooksOutput
18490	if *v == nil {
18491		sv = &SearchAddressBooksOutput{}
18492	} else {
18493		sv = *v
18494	}
18495
18496	for key, value := range shape {
18497		switch key {
18498		case "AddressBooks":
18499			if err := awsAwsjson11_deserializeDocumentAddressBookDataList(&sv.AddressBooks, value); err != nil {
18500				return err
18501			}
18502
18503		case "NextToken":
18504			if value != nil {
18505				jtv, ok := value.(string)
18506				if !ok {
18507					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18508				}
18509				sv.NextToken = ptr.String(jtv)
18510			}
18511
18512		case "TotalCount":
18513			if value != nil {
18514				jtv, ok := value.(json.Number)
18515				if !ok {
18516					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18517				}
18518				i64, err := jtv.Int64()
18519				if err != nil {
18520					return err
18521				}
18522				sv.TotalCount = ptr.Int32(int32(i64))
18523			}
18524
18525		default:
18526			_, _ = key, value
18527
18528		}
18529	}
18530	*v = sv
18531	return nil
18532}
18533
18534func awsAwsjson11_deserializeOpDocumentSearchContactsOutput(v **SearchContactsOutput, value interface{}) error {
18535	if v == nil {
18536		return fmt.Errorf("unexpected nil of type %T", v)
18537	}
18538	if value == nil {
18539		return nil
18540	}
18541
18542	shape, ok := value.(map[string]interface{})
18543	if !ok {
18544		return fmt.Errorf("unexpected JSON type %v", value)
18545	}
18546
18547	var sv *SearchContactsOutput
18548	if *v == nil {
18549		sv = &SearchContactsOutput{}
18550	} else {
18551		sv = *v
18552	}
18553
18554	for key, value := range shape {
18555		switch key {
18556		case "Contacts":
18557			if err := awsAwsjson11_deserializeDocumentContactDataList(&sv.Contacts, value); err != nil {
18558				return err
18559			}
18560
18561		case "NextToken":
18562			if value != nil {
18563				jtv, ok := value.(string)
18564				if !ok {
18565					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18566				}
18567				sv.NextToken = ptr.String(jtv)
18568			}
18569
18570		case "TotalCount":
18571			if value != nil {
18572				jtv, ok := value.(json.Number)
18573				if !ok {
18574					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18575				}
18576				i64, err := jtv.Int64()
18577				if err != nil {
18578					return err
18579				}
18580				sv.TotalCount = ptr.Int32(int32(i64))
18581			}
18582
18583		default:
18584			_, _ = key, value
18585
18586		}
18587	}
18588	*v = sv
18589	return nil
18590}
18591
18592func awsAwsjson11_deserializeOpDocumentSearchDevicesOutput(v **SearchDevicesOutput, value interface{}) error {
18593	if v == nil {
18594		return fmt.Errorf("unexpected nil of type %T", v)
18595	}
18596	if value == nil {
18597		return nil
18598	}
18599
18600	shape, ok := value.(map[string]interface{})
18601	if !ok {
18602		return fmt.Errorf("unexpected JSON type %v", value)
18603	}
18604
18605	var sv *SearchDevicesOutput
18606	if *v == nil {
18607		sv = &SearchDevicesOutput{}
18608	} else {
18609		sv = *v
18610	}
18611
18612	for key, value := range shape {
18613		switch key {
18614		case "Devices":
18615			if err := awsAwsjson11_deserializeDocumentDeviceDataList(&sv.Devices, value); err != nil {
18616				return err
18617			}
18618
18619		case "NextToken":
18620			if value != nil {
18621				jtv, ok := value.(string)
18622				if !ok {
18623					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18624				}
18625				sv.NextToken = ptr.String(jtv)
18626			}
18627
18628		case "TotalCount":
18629			if value != nil {
18630				jtv, ok := value.(json.Number)
18631				if !ok {
18632					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18633				}
18634				i64, err := jtv.Int64()
18635				if err != nil {
18636					return err
18637				}
18638				sv.TotalCount = ptr.Int32(int32(i64))
18639			}
18640
18641		default:
18642			_, _ = key, value
18643
18644		}
18645	}
18646	*v = sv
18647	return nil
18648}
18649
18650func awsAwsjson11_deserializeOpDocumentSearchNetworkProfilesOutput(v **SearchNetworkProfilesOutput, value interface{}) error {
18651	if v == nil {
18652		return fmt.Errorf("unexpected nil of type %T", v)
18653	}
18654	if value == nil {
18655		return nil
18656	}
18657
18658	shape, ok := value.(map[string]interface{})
18659	if !ok {
18660		return fmt.Errorf("unexpected JSON type %v", value)
18661	}
18662
18663	var sv *SearchNetworkProfilesOutput
18664	if *v == nil {
18665		sv = &SearchNetworkProfilesOutput{}
18666	} else {
18667		sv = *v
18668	}
18669
18670	for key, value := range shape {
18671		switch key {
18672		case "NetworkProfiles":
18673			if err := awsAwsjson11_deserializeDocumentNetworkProfileDataList(&sv.NetworkProfiles, value); err != nil {
18674				return err
18675			}
18676
18677		case "NextToken":
18678			if value != nil {
18679				jtv, ok := value.(string)
18680				if !ok {
18681					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18682				}
18683				sv.NextToken = ptr.String(jtv)
18684			}
18685
18686		case "TotalCount":
18687			if value != nil {
18688				jtv, ok := value.(json.Number)
18689				if !ok {
18690					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18691				}
18692				i64, err := jtv.Int64()
18693				if err != nil {
18694					return err
18695				}
18696				sv.TotalCount = ptr.Int32(int32(i64))
18697			}
18698
18699		default:
18700			_, _ = key, value
18701
18702		}
18703	}
18704	*v = sv
18705	return nil
18706}
18707
18708func awsAwsjson11_deserializeOpDocumentSearchProfilesOutput(v **SearchProfilesOutput, value interface{}) error {
18709	if v == nil {
18710		return fmt.Errorf("unexpected nil of type %T", v)
18711	}
18712	if value == nil {
18713		return nil
18714	}
18715
18716	shape, ok := value.(map[string]interface{})
18717	if !ok {
18718		return fmt.Errorf("unexpected JSON type %v", value)
18719	}
18720
18721	var sv *SearchProfilesOutput
18722	if *v == nil {
18723		sv = &SearchProfilesOutput{}
18724	} else {
18725		sv = *v
18726	}
18727
18728	for key, value := range shape {
18729		switch key {
18730		case "NextToken":
18731			if value != nil {
18732				jtv, ok := value.(string)
18733				if !ok {
18734					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18735				}
18736				sv.NextToken = ptr.String(jtv)
18737			}
18738
18739		case "Profiles":
18740			if err := awsAwsjson11_deserializeDocumentProfileDataList(&sv.Profiles, value); err != nil {
18741				return err
18742			}
18743
18744		case "TotalCount":
18745			if value != nil {
18746				jtv, ok := value.(json.Number)
18747				if !ok {
18748					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18749				}
18750				i64, err := jtv.Int64()
18751				if err != nil {
18752					return err
18753				}
18754				sv.TotalCount = ptr.Int32(int32(i64))
18755			}
18756
18757		default:
18758			_, _ = key, value
18759
18760		}
18761	}
18762	*v = sv
18763	return nil
18764}
18765
18766func awsAwsjson11_deserializeOpDocumentSearchRoomsOutput(v **SearchRoomsOutput, value interface{}) error {
18767	if v == nil {
18768		return fmt.Errorf("unexpected nil of type %T", v)
18769	}
18770	if value == nil {
18771		return nil
18772	}
18773
18774	shape, ok := value.(map[string]interface{})
18775	if !ok {
18776		return fmt.Errorf("unexpected JSON type %v", value)
18777	}
18778
18779	var sv *SearchRoomsOutput
18780	if *v == nil {
18781		sv = &SearchRoomsOutput{}
18782	} else {
18783		sv = *v
18784	}
18785
18786	for key, value := range shape {
18787		switch key {
18788		case "NextToken":
18789			if value != nil {
18790				jtv, ok := value.(string)
18791				if !ok {
18792					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18793				}
18794				sv.NextToken = ptr.String(jtv)
18795			}
18796
18797		case "Rooms":
18798			if err := awsAwsjson11_deserializeDocumentRoomDataList(&sv.Rooms, value); err != nil {
18799				return err
18800			}
18801
18802		case "TotalCount":
18803			if value != nil {
18804				jtv, ok := value.(json.Number)
18805				if !ok {
18806					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18807				}
18808				i64, err := jtv.Int64()
18809				if err != nil {
18810					return err
18811				}
18812				sv.TotalCount = ptr.Int32(int32(i64))
18813			}
18814
18815		default:
18816			_, _ = key, value
18817
18818		}
18819	}
18820	*v = sv
18821	return nil
18822}
18823
18824func awsAwsjson11_deserializeOpDocumentSearchSkillGroupsOutput(v **SearchSkillGroupsOutput, value interface{}) error {
18825	if v == nil {
18826		return fmt.Errorf("unexpected nil of type %T", v)
18827	}
18828	if value == nil {
18829		return nil
18830	}
18831
18832	shape, ok := value.(map[string]interface{})
18833	if !ok {
18834		return fmt.Errorf("unexpected JSON type %v", value)
18835	}
18836
18837	var sv *SearchSkillGroupsOutput
18838	if *v == nil {
18839		sv = &SearchSkillGroupsOutput{}
18840	} else {
18841		sv = *v
18842	}
18843
18844	for key, value := range shape {
18845		switch key {
18846		case "NextToken":
18847			if value != nil {
18848				jtv, ok := value.(string)
18849				if !ok {
18850					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18851				}
18852				sv.NextToken = ptr.String(jtv)
18853			}
18854
18855		case "SkillGroups":
18856			if err := awsAwsjson11_deserializeDocumentSkillGroupDataList(&sv.SkillGroups, value); err != nil {
18857				return err
18858			}
18859
18860		case "TotalCount":
18861			if value != nil {
18862				jtv, ok := value.(json.Number)
18863				if !ok {
18864					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18865				}
18866				i64, err := jtv.Int64()
18867				if err != nil {
18868					return err
18869				}
18870				sv.TotalCount = ptr.Int32(int32(i64))
18871			}
18872
18873		default:
18874			_, _ = key, value
18875
18876		}
18877	}
18878	*v = sv
18879	return nil
18880}
18881
18882func awsAwsjson11_deserializeOpDocumentSearchUsersOutput(v **SearchUsersOutput, value interface{}) error {
18883	if v == nil {
18884		return fmt.Errorf("unexpected nil of type %T", v)
18885	}
18886	if value == nil {
18887		return nil
18888	}
18889
18890	shape, ok := value.(map[string]interface{})
18891	if !ok {
18892		return fmt.Errorf("unexpected JSON type %v", value)
18893	}
18894
18895	var sv *SearchUsersOutput
18896	if *v == nil {
18897		sv = &SearchUsersOutput{}
18898	} else {
18899		sv = *v
18900	}
18901
18902	for key, value := range shape {
18903		switch key {
18904		case "NextToken":
18905			if value != nil {
18906				jtv, ok := value.(string)
18907				if !ok {
18908					return fmt.Errorf("expected NextToken to be of type string, got %T instead", value)
18909				}
18910				sv.NextToken = ptr.String(jtv)
18911			}
18912
18913		case "TotalCount":
18914			if value != nil {
18915				jtv, ok := value.(json.Number)
18916				if !ok {
18917					return fmt.Errorf("expected TotalCount to be json.Number, got %T instead", value)
18918				}
18919				i64, err := jtv.Int64()
18920				if err != nil {
18921					return err
18922				}
18923				sv.TotalCount = ptr.Int32(int32(i64))
18924			}
18925
18926		case "Users":
18927			if err := awsAwsjson11_deserializeDocumentUserDataList(&sv.Users, value); err != nil {
18928				return err
18929			}
18930
18931		default:
18932			_, _ = key, value
18933
18934		}
18935	}
18936	*v = sv
18937	return nil
18938}
18939
18940func awsAwsjson11_deserializeOpDocumentSendAnnouncementOutput(v **SendAnnouncementOutput, value interface{}) error {
18941	if v == nil {
18942		return fmt.Errorf("unexpected nil of type %T", v)
18943	}
18944	if value == nil {
18945		return nil
18946	}
18947
18948	shape, ok := value.(map[string]interface{})
18949	if !ok {
18950		return fmt.Errorf("unexpected JSON type %v", value)
18951	}
18952
18953	var sv *SendAnnouncementOutput
18954	if *v == nil {
18955		sv = &SendAnnouncementOutput{}
18956	} else {
18957		sv = *v
18958	}
18959
18960	for key, value := range shape {
18961		switch key {
18962		case "AnnouncementArn":
18963			if value != nil {
18964				jtv, ok := value.(string)
18965				if !ok {
18966					return fmt.Errorf("expected Arn to be of type string, got %T instead", value)
18967				}
18968				sv.AnnouncementArn = ptr.String(jtv)
18969			}
18970
18971		default:
18972			_, _ = key, value
18973
18974		}
18975	}
18976	*v = sv
18977	return nil
18978}
18979
18980func awsAwsjson11_deserializeOpDocumentSendInvitationOutput(v **SendInvitationOutput, value interface{}) error {
18981	if v == nil {
18982		return fmt.Errorf("unexpected nil of type %T", v)
18983	}
18984	if value == nil {
18985		return nil
18986	}
18987
18988	shape, ok := value.(map[string]interface{})
18989	if !ok {
18990		return fmt.Errorf("unexpected JSON type %v", value)
18991	}
18992
18993	var sv *SendInvitationOutput
18994	if *v == nil {
18995		sv = &SendInvitationOutput{}
18996	} else {
18997		sv = *v
18998	}
18999
19000	for key, value := range shape {
19001		switch key {
19002		default:
19003			_, _ = key, value
19004
19005		}
19006	}
19007	*v = sv
19008	return nil
19009}
19010
19011func awsAwsjson11_deserializeOpDocumentStartDeviceSyncOutput(v **StartDeviceSyncOutput, value interface{}) error {
19012	if v == nil {
19013		return fmt.Errorf("unexpected nil of type %T", v)
19014	}
19015	if value == nil {
19016		return nil
19017	}
19018
19019	shape, ok := value.(map[string]interface{})
19020	if !ok {
19021		return fmt.Errorf("unexpected JSON type %v", value)
19022	}
19023
19024	var sv *StartDeviceSyncOutput
19025	if *v == nil {
19026		sv = &StartDeviceSyncOutput{}
19027	} else {
19028		sv = *v
19029	}
19030
19031	for key, value := range shape {
19032		switch key {
19033		default:
19034			_, _ = key, value
19035
19036		}
19037	}
19038	*v = sv
19039	return nil
19040}
19041
19042func awsAwsjson11_deserializeOpDocumentStartSmartHomeApplianceDiscoveryOutput(v **StartSmartHomeApplianceDiscoveryOutput, value interface{}) error {
19043	if v == nil {
19044		return fmt.Errorf("unexpected nil of type %T", v)
19045	}
19046	if value == nil {
19047		return nil
19048	}
19049
19050	shape, ok := value.(map[string]interface{})
19051	if !ok {
19052		return fmt.Errorf("unexpected JSON type %v", value)
19053	}
19054
19055	var sv *StartSmartHomeApplianceDiscoveryOutput
19056	if *v == nil {
19057		sv = &StartSmartHomeApplianceDiscoveryOutput{}
19058	} else {
19059		sv = *v
19060	}
19061
19062	for key, value := range shape {
19063		switch key {
19064		default:
19065			_, _ = key, value
19066
19067		}
19068	}
19069	*v = sv
19070	return nil
19071}
19072
19073func awsAwsjson11_deserializeOpDocumentTagResourceOutput(v **TagResourceOutput, value interface{}) error {
19074	if v == nil {
19075		return fmt.Errorf("unexpected nil of type %T", v)
19076	}
19077	if value == nil {
19078		return nil
19079	}
19080
19081	shape, ok := value.(map[string]interface{})
19082	if !ok {
19083		return fmt.Errorf("unexpected JSON type %v", value)
19084	}
19085
19086	var sv *TagResourceOutput
19087	if *v == nil {
19088		sv = &TagResourceOutput{}
19089	} else {
19090		sv = *v
19091	}
19092
19093	for key, value := range shape {
19094		switch key {
19095		default:
19096			_, _ = key, value
19097
19098		}
19099	}
19100	*v = sv
19101	return nil
19102}
19103
19104func awsAwsjson11_deserializeOpDocumentUntagResourceOutput(v **UntagResourceOutput, value interface{}) error {
19105	if v == nil {
19106		return fmt.Errorf("unexpected nil of type %T", v)
19107	}
19108	if value == nil {
19109		return nil
19110	}
19111
19112	shape, ok := value.(map[string]interface{})
19113	if !ok {
19114		return fmt.Errorf("unexpected JSON type %v", value)
19115	}
19116
19117	var sv *UntagResourceOutput
19118	if *v == nil {
19119		sv = &UntagResourceOutput{}
19120	} else {
19121		sv = *v
19122	}
19123
19124	for key, value := range shape {
19125		switch key {
19126		default:
19127			_, _ = key, value
19128
19129		}
19130	}
19131	*v = sv
19132	return nil
19133}
19134
19135func awsAwsjson11_deserializeOpDocumentUpdateAddressBookOutput(v **UpdateAddressBookOutput, value interface{}) error {
19136	if v == nil {
19137		return fmt.Errorf("unexpected nil of type %T", v)
19138	}
19139	if value == nil {
19140		return nil
19141	}
19142
19143	shape, ok := value.(map[string]interface{})
19144	if !ok {
19145		return fmt.Errorf("unexpected JSON type %v", value)
19146	}
19147
19148	var sv *UpdateAddressBookOutput
19149	if *v == nil {
19150		sv = &UpdateAddressBookOutput{}
19151	} else {
19152		sv = *v
19153	}
19154
19155	for key, value := range shape {
19156		switch key {
19157		default:
19158			_, _ = key, value
19159
19160		}
19161	}
19162	*v = sv
19163	return nil
19164}
19165
19166func awsAwsjson11_deserializeOpDocumentUpdateBusinessReportScheduleOutput(v **UpdateBusinessReportScheduleOutput, value interface{}) error {
19167	if v == nil {
19168		return fmt.Errorf("unexpected nil of type %T", v)
19169	}
19170	if value == nil {
19171		return nil
19172	}
19173
19174	shape, ok := value.(map[string]interface{})
19175	if !ok {
19176		return fmt.Errorf("unexpected JSON type %v", value)
19177	}
19178
19179	var sv *UpdateBusinessReportScheduleOutput
19180	if *v == nil {
19181		sv = &UpdateBusinessReportScheduleOutput{}
19182	} else {
19183		sv = *v
19184	}
19185
19186	for key, value := range shape {
19187		switch key {
19188		default:
19189			_, _ = key, value
19190
19191		}
19192	}
19193	*v = sv
19194	return nil
19195}
19196
19197func awsAwsjson11_deserializeOpDocumentUpdateConferenceProviderOutput(v **UpdateConferenceProviderOutput, value interface{}) error {
19198	if v == nil {
19199		return fmt.Errorf("unexpected nil of type %T", v)
19200	}
19201	if value == nil {
19202		return nil
19203	}
19204
19205	shape, ok := value.(map[string]interface{})
19206	if !ok {
19207		return fmt.Errorf("unexpected JSON type %v", value)
19208	}
19209
19210	var sv *UpdateConferenceProviderOutput
19211	if *v == nil {
19212		sv = &UpdateConferenceProviderOutput{}
19213	} else {
19214		sv = *v
19215	}
19216
19217	for key, value := range shape {
19218		switch key {
19219		default:
19220			_, _ = key, value
19221
19222		}
19223	}
19224	*v = sv
19225	return nil
19226}
19227
19228func awsAwsjson11_deserializeOpDocumentUpdateContactOutput(v **UpdateContactOutput, value interface{}) error {
19229	if v == nil {
19230		return fmt.Errorf("unexpected nil of type %T", v)
19231	}
19232	if value == nil {
19233		return nil
19234	}
19235
19236	shape, ok := value.(map[string]interface{})
19237	if !ok {
19238		return fmt.Errorf("unexpected JSON type %v", value)
19239	}
19240
19241	var sv *UpdateContactOutput
19242	if *v == nil {
19243		sv = &UpdateContactOutput{}
19244	} else {
19245		sv = *v
19246	}
19247
19248	for key, value := range shape {
19249		switch key {
19250		default:
19251			_, _ = key, value
19252
19253		}
19254	}
19255	*v = sv
19256	return nil
19257}
19258
19259func awsAwsjson11_deserializeOpDocumentUpdateDeviceOutput(v **UpdateDeviceOutput, value interface{}) error {
19260	if v == nil {
19261		return fmt.Errorf("unexpected nil of type %T", v)
19262	}
19263	if value == nil {
19264		return nil
19265	}
19266
19267	shape, ok := value.(map[string]interface{})
19268	if !ok {
19269		return fmt.Errorf("unexpected JSON type %v", value)
19270	}
19271
19272	var sv *UpdateDeviceOutput
19273	if *v == nil {
19274		sv = &UpdateDeviceOutput{}
19275	} else {
19276		sv = *v
19277	}
19278
19279	for key, value := range shape {
19280		switch key {
19281		default:
19282			_, _ = key, value
19283
19284		}
19285	}
19286	*v = sv
19287	return nil
19288}
19289
19290func awsAwsjson11_deserializeOpDocumentUpdateGatewayGroupOutput(v **UpdateGatewayGroupOutput, value interface{}) error {
19291	if v == nil {
19292		return fmt.Errorf("unexpected nil of type %T", v)
19293	}
19294	if value == nil {
19295		return nil
19296	}
19297
19298	shape, ok := value.(map[string]interface{})
19299	if !ok {
19300		return fmt.Errorf("unexpected JSON type %v", value)
19301	}
19302
19303	var sv *UpdateGatewayGroupOutput
19304	if *v == nil {
19305		sv = &UpdateGatewayGroupOutput{}
19306	} else {
19307		sv = *v
19308	}
19309
19310	for key, value := range shape {
19311		switch key {
19312		default:
19313			_, _ = key, value
19314
19315		}
19316	}
19317	*v = sv
19318	return nil
19319}
19320
19321func awsAwsjson11_deserializeOpDocumentUpdateGatewayOutput(v **UpdateGatewayOutput, value interface{}) error {
19322	if v == nil {
19323		return fmt.Errorf("unexpected nil of type %T", v)
19324	}
19325	if value == nil {
19326		return nil
19327	}
19328
19329	shape, ok := value.(map[string]interface{})
19330	if !ok {
19331		return fmt.Errorf("unexpected JSON type %v", value)
19332	}
19333
19334	var sv *UpdateGatewayOutput
19335	if *v == nil {
19336		sv = &UpdateGatewayOutput{}
19337	} else {
19338		sv = *v
19339	}
19340
19341	for key, value := range shape {
19342		switch key {
19343		default:
19344			_, _ = key, value
19345
19346		}
19347	}
19348	*v = sv
19349	return nil
19350}
19351
19352func awsAwsjson11_deserializeOpDocumentUpdateNetworkProfileOutput(v **UpdateNetworkProfileOutput, value interface{}) error {
19353	if v == nil {
19354		return fmt.Errorf("unexpected nil of type %T", v)
19355	}
19356	if value == nil {
19357		return nil
19358	}
19359
19360	shape, ok := value.(map[string]interface{})
19361	if !ok {
19362		return fmt.Errorf("unexpected JSON type %v", value)
19363	}
19364
19365	var sv *UpdateNetworkProfileOutput
19366	if *v == nil {
19367		sv = &UpdateNetworkProfileOutput{}
19368	} else {
19369		sv = *v
19370	}
19371
19372	for key, value := range shape {
19373		switch key {
19374		default:
19375			_, _ = key, value
19376
19377		}
19378	}
19379	*v = sv
19380	return nil
19381}
19382
19383func awsAwsjson11_deserializeOpDocumentUpdateProfileOutput(v **UpdateProfileOutput, value interface{}) error {
19384	if v == nil {
19385		return fmt.Errorf("unexpected nil of type %T", v)
19386	}
19387	if value == nil {
19388		return nil
19389	}
19390
19391	shape, ok := value.(map[string]interface{})
19392	if !ok {
19393		return fmt.Errorf("unexpected JSON type %v", value)
19394	}
19395
19396	var sv *UpdateProfileOutput
19397	if *v == nil {
19398		sv = &UpdateProfileOutput{}
19399	} else {
19400		sv = *v
19401	}
19402
19403	for key, value := range shape {
19404		switch key {
19405		default:
19406			_, _ = key, value
19407
19408		}
19409	}
19410	*v = sv
19411	return nil
19412}
19413
19414func awsAwsjson11_deserializeOpDocumentUpdateRoomOutput(v **UpdateRoomOutput, value interface{}) error {
19415	if v == nil {
19416		return fmt.Errorf("unexpected nil of type %T", v)
19417	}
19418	if value == nil {
19419		return nil
19420	}
19421
19422	shape, ok := value.(map[string]interface{})
19423	if !ok {
19424		return fmt.Errorf("unexpected JSON type %v", value)
19425	}
19426
19427	var sv *UpdateRoomOutput
19428	if *v == nil {
19429		sv = &UpdateRoomOutput{}
19430	} else {
19431		sv = *v
19432	}
19433
19434	for key, value := range shape {
19435		switch key {
19436		default:
19437			_, _ = key, value
19438
19439		}
19440	}
19441	*v = sv
19442	return nil
19443}
19444
19445func awsAwsjson11_deserializeOpDocumentUpdateSkillGroupOutput(v **UpdateSkillGroupOutput, value interface{}) error {
19446	if v == nil {
19447		return fmt.Errorf("unexpected nil of type %T", v)
19448	}
19449	if value == nil {
19450		return nil
19451	}
19452
19453	shape, ok := value.(map[string]interface{})
19454	if !ok {
19455		return fmt.Errorf("unexpected JSON type %v", value)
19456	}
19457
19458	var sv *UpdateSkillGroupOutput
19459	if *v == nil {
19460		sv = &UpdateSkillGroupOutput{}
19461	} else {
19462		sv = *v
19463	}
19464
19465	for key, value := range shape {
19466		switch key {
19467		default:
19468			_, _ = key, value
19469
19470		}
19471	}
19472	*v = sv
19473	return nil
19474}
19475