U
    3dZ                     @   sX  d dl mZ d dlmZmZ G dd deZG dd deZG dd deZ	G d	d
 d
eZ
G dd de
ZG dd de	ZG dd deZdd ZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd  d eZG d!d" d"eZG d#d$ d$eZG d%d& d&eZG d'd( d(eZG d)d* d*eZG d+d, d,eZG d-d. d.eZG d/d0 d0eZG d1d2 d2eZG d3d4 d4eZG d5d6 d6eZ G d7d8 d8eZ!G d9d: d:eZ"G d;d< d<eZ#G d=d> d>eZ$G d?d@ d@e$Z%G dAdB dBeZ&G dCdD dDeZ'G dEdF dFeZ(G dGdH dHeZ)G dIdJ dJeZ*G dKdL dLeZ+G dMdN dNeZ,G dOdP dPeZ-G dQdR dReZ.G dSdT dTeZ/G dUdV dVeZ0G dWdX dXeZ1G dYdZ dZe1Z2G d[d\ d\eZ3G d]d^ d^eZ4G d_d` d`eZ5G dadb dbeZ6G dcdd ddeZ7G dedf dfeZ8G dgdh dheZ9G didj djeZ:G dkdl dleZ;G dmdn dneZ<G dodp dpeZ=G dqdr dreZ>G dsdt dte>Z?G dudv dve<Z@G dwdx dxeZAG dydz dze>ZBG d{d| d|e>ZCG d}d~ d~e>ZDG dd de>ZEG dd de>ZFG dd de>ZGG dd deZHG dd deZIG dd deIZJG dd deIZKG dd deZLG dd deZMG dd deMZNG dd deZOG dd deZPG dd deZQG dd deZRG dd deZSG dd deZTG dd deTZUG dd deZVG dd deZWG dd deZXG dd deXZYG dd deZZG dd deZ[G dd deZ\G dd deZ]G dd deZ^G dd deZ_G dd deZ`G dd de`ZaG dd deZbG dd deZcG dd decZdG dd deZeG dd deZfG ddĄ defZgG ddƄ deZhG ddȄ deZiG ddʄ deiZjdS )    )Decimal)filtermapc                   @   s    e Zd ZdZdd Zdd ZdS )ComplexTypeValuec                 C   s   d t| | jd |  S )Nz{0}{1})formatgetattr_valuecopyself r   5/tmp/pip-unpacked-wheel-d7dsrkjd/boto/mws/response.py__repr__   s    zComplexType.__repr__c                 C   s   t t| | jdS )N )strr   r	   r   r   r   r   __str__   s    zComplexType.__str__N)__name__
__module____qualname__r	   r   r   r   r   r   r   r      s   r   c                   @   s>   e Zd ZdddZdd Zdd Zdd	 Zd
d Zdd ZdS )DeclarativeTypeNc                 K   sx   d | _ |d k	r|| _d S G dd dt}|| _d| jjtt| jdd  | j_| D ]\}}t	| j|| q\d S )Nc                   @   s   e Zd ZdS )z-DeclarativeType.__init__.<locals>.JITResponseNr   r   r   r   r   r   r   JITResponse(   s   r   zJIT_{0}/{1}   )
r	   _hintResponseElementr   	__class__r   hexiditemssetattr)r   r   kwr   namevaluer   r   r   __init__"   s    
zDeclarativeType.__init__c                 C   s<   t | dd }d| jj|r |jp"dt | ddtt| jS )N_parentz<{0}_{1}/{2}_{3}>?_name)r   r   r   r   r'   r   r   )r   parentr   r   r   r   0   s    

zDeclarativeType.__repr__c                 O   sB   || _ || _| j| jd| _|| j_ || j_t| j | j| j d S )Nr   )r%   r'   r   r   Z_cloner    )r   r(   r"   argsr!   r   r   r   setup7   s    zDeclarativeType.setupc                 O   s   t d S NNotImplementedErrorr   r*   r!   r   r   r   start?   s    zDeclarativeType.startc                 O   s   t d S r,   r-   r/   r   r   r   endB   s    zDeclarativeType.endc                 O   s   t | j| j| j d S r,   )r    r%   r'   r	   r/   r   r   r   teardownE   s    zDeclarativeType.teardown)N)	r   r   r   r$   r   r+   r0   r1   r2   r   r   r   r   r   !   s   
r   c                   @   s   e Zd Zdd Zdd ZdS )Elementc                 O   s   | j f d| ji|| _| jS Nr(   )r   r%   r	   r/   r   r   r   r0   J   s    zElement.startc                 O   s   d S r,   r   r/   r   r   r   r1   N   s    zElement.endNr   r   r   r0   r1   r   r   r   r   r3   I   s   r3   c                       s,   e Zd Z fddZdd Zdd Z  ZS )
SimpleListc                    s   t t| j|| g | _d S r,   )superr6   r$   r	   r/   r   r   r   r$   S   s    zSimpleList.__init__c                 O   s   d S r,   r   r/   r   r   r   r0   W   s    zSimpleList.startc                 O   s   | j | d S r,   )r	   append)r   r"   r#   r*   r!   r   r   r   r1   Z   s    zSimpleList.end)r   r   r   r$   r0   r1   __classcell__r   r   r8   r   r6   R   s   r6   c                   @   s   e Zd Zdd Zdd ZdS )ElementListc                 O   s&   | j f d| ji|}| j| |S r4   )r   r%   r	   r9   )r   r*   r!   r#   r   r   r   r0   _   s    zElementList.startc                 O   s   d S r,   r   r/   r   r   r   r1   d   s    zElementList.endNr5   r   r   r   r   r;   ^   s   r;   c                       s*   e Zd Zd fdd	Z fddZ  ZS )
MemberListNc                    s   d | jj}d|kst||d kr`|d krLtt| j|dtf |i qtt| j|d nZ|d krt|t	r~|f |}nt|f|}tt| j|d|i nd | jj|}t|d S )Nz%Invalid `member` specification in {0}memberr)   zNonsensical {0} hint {1!r})
r   r   r   AssertionErrorr7   r<   r$   r;   
issubclassr   )r   Z_memberr   r*   r!   messager=   r8   r   r   r$   i   s    

zMemberList.__init__c                    sH   | j d krg | _ n t| j jtr(g | j _| j j| _ tt| j|| d S r,   )r	   
isinstancer=   r   r7   r<   r2   r/   r8   r   r   r2   }   s    

zMemberList.teardown)NN)r   r   r   r$   r2   r:   r   r   r8   r   r<   h   s   r<   c                   @   s8   e Zd ZdddZdd Zdd Zdd	 Zdd
dZdS )ResponseFactoryNc                 C   s   |d krg n|| _ d S r,   )scopes)r   rC   r   r   r   r$      s    zResponseFactory.__init__c                    s(   G  fddd|}t |dt  |S )Nc                       s   e Zd Z ZdS )z7ResponseFactory.element_factory.<locals>.DynamicElementN)r   r   r   r'   r   r"   r   r   DynamicElement   s   rE   r   )r    r   )r   r"   r(   rE   r   rD   r   element_factory   s    zResponseFactory.element_factoryc                 C   sF   | j D ]:}t||r"t||  S t|dr||kr||   S qd S )N__getitem__)rC   hasattrr   )r   keyscoper   r   r   search_scopes   s    


zResponseFactory.search_scopesc                 C   sh   |  || }|d k	r|S |drX|  |d td  | }|d k	rX| || |S | || |S )NZByNextToken)rK   endswithlenrF   )r   actionsuffixr(   elementr   r   r   find_element   s    
zResponseFactory.find_elementc                 C   sH   |  |dt}t||d s>|  |dt}t||d t| ||dS )NResponseResult)
connection)rQ   rR   rH   r   r    r3   )r   rN   rT   responseresultr   r   r   __call__   s
    zResponseFactory.__call__)N)N)r   r   r   r$   rF   rK   rQ   rW   r   r   r   r   rB      s
   

rB   c                    s    fdd}|S )Nc                    sB   | j d k	r0|| j d r0|t| j d d  } | |f||S )N:)
_namespace
startswithrM   )r   r"   r*   r!   funcr   r   wrapper   s    
z strip_namespace.<locals>.wrapperr   )r\   r]   r   r[   r   strip_namespace   s    r^   c                   @   s^   e Zd Zi ZdZdZdddZdd Zedd Z	dd	 Z
d
d Zedd Zedd ZdS )r   Nc                 C   sf   |d k	r| j d kr|j | _ |d k	r(|| _|p8| jp8| jj| _| jd|d t| |r\| p^i  d S )Nr+   )attrs)	rY   _connectionr'   r   r   	_declareddictr$   r
   )r   rT   r"   r(   r_   r   r   r   r$      s    zResponseElement.__init__c                    sd    fdd  | j }|| j dd }t|| D ]&\}}t||| |fd| ji| q8d S )Nc                    s4   i }t | ddD ]}| | q|| j |S )N	__bases__r   )r   update__dict__)objrV   clsinheritr   r   ri      s
    z*ResponseElement._declared.<locals>.inheritc                 S   s   t | d tS )N   )rA   r   )attrr   r   r   <lambda>       z+ResponseElement._declared.<locals>.<lambda>Z
parentname)r   rd   re   r   r   r   r'   )r   opr!   rJ   Zdeclaredr"   noder   rh   r   ra      s    
zResponseElement._declaredc                 C   s   | j S r,   )r`   r   r   r   r   rT      s    zResponseElement.connectionc              	   C   s`   dd }dd }t || j }| jj}|drBd| jp>d}d||  d	t
||S )	Nc                 S   s
   dj |  S )Nz{0!s}: {1!r})r   pairr   r   r   rl      rm   z*ResponseElement.__repr__.<locals>.<lambda>c                 S   s   | d  d S )Nr   _)rZ   rp   r   r   r   rl      rm   ZJIT_z^{0}^r   z{0}{1!r}({2})z, )r   re   r   r   r   rZ   r   r'   r
   joinr   )r   renderZdo_showr_   r"   r   r   r   r      s    
  zResponseElement.__repr__c                 C   s   | j |t |tS r,   )	_overridegetglobalsr   )r   r"   r_   r   r   r   	_type_for   s    zResponseElement._type_forc                 C   sL   t | |d }t|tr&|j|||dS | rDt| |t|  nd S d S )N)r"   r_   rT   )r   rA   r   r0   	getLengthr    r   r
   )r   r"   r_   rT   	attributer   r   r   startElement   s    
zResponseElement.startElementc                 C   sh   t | |d }|| jkr"| d nBt|tr>|j|||d n&t|trXt||j| nt| || d S )Nr2   )r"   r#   rT   )	r   r'   ra   rA   r   r1   r   r    r	   )r   r"   r#   rT   rz   r   r   r   
endElement   s    


zResponseElement.endElement)NNNN)r   r   r   ru   r'   rY   r$   ra   propertyrT   r   rx   r^   r{   r|   r   r   r   r   r      s   
	



r   c                       s>   e Zd Ze Ze fddZedd Zedd Z	  Z
S )rR   c                    s.   || j kr| | ntt| |||S d S r,   )r'   rd   r7   rR   r{   )r   r"   r_   rT   r8   r   r   r{      s    
zResponse.startElementc                 C   s   t | | jd d S NrS   )r   _actionr   r   r   r   _result  s    zResponse._resultc                 C   s   | j p| jjd td  S )NrR   )r'   r   r   rM   r   r   r   r   r     s    zResponse._action)r   r   r   r3   ZResponseMetadatar^   r{   r}   r   r   r:   r   r   r8   r   rR      s   
rR   c                       s    e Zd ZeZ fddZ  ZS )ResponseResultListc                    s.   t | | jd t| j tt| j|| d S r~   )r    r   r;   _ResultClassr7   r   r$   r/   r8   r   r   r$     s    zResponseResultList.__init__)r   r   r   r   r   r$   r:   r   r   r8   r   r     s   r   c                   @   s   e Zd ZdS )FeedSubmissionInfoNr   r   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )SubmitFeedResultN)r   r   r   r3   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )GetFeedSubmissionListResultN)r   r   r   r;   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetFeedSubmissionCountResultNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )CancelFeedSubmissionsResultNr   r   r   r   r   r   $  s   r   c                   @   s   e Zd Zee dZdS )GetServiceStatusResult)MessagesN)r   r   r   r3   r;   r   r   r   r   r   r   (  s   r   c                   @   s   e Zd ZdS )ReportRequestInfoNr   r   r   r   r   r   ,  s   r   c                   @   s   e Zd Ze ZdS )RequestReportResultN)r   r   r   r3   r   r   r   r   r   r   0  s   r   c                   @   s   e Zd Ze ZdS )GetReportRequestListResultN)r   r   r   r;   r   r   r   r   r   r   4  s   r   c                   @   s   e Zd ZdS )CancelReportRequestsResultNr   r   r   r   r   r   8  s   r   c                   @   s   e Zd Ze ZdS )GetReportListResultN)r   r   r   r;   Z
ReportInfor   r   r   r   r   <  s   r   c                   @   s   e Zd Ze ZdS )ManageReportScheduleResultN)r   r   r   r3   ZReportScheduler   r   r   r   r   @  s   r   c                   @   s   e Zd ZdS )GetReportScheduleListResultNr   r   r   r   r   r   D  s   r   c                   @   s   e Zd ZdS )"UpdateReportAcknowledgementsResultNr   r   r   r   r   r   H  s   r   c                   @   s   e Zd Zee e dZdS )CreateInboundShipmentPlanResult)ShipToAddressZItemsN)r   r   r   r<   r3   ZInboundShipmentPlansr   r   r   r   r   L  s   r   c                   @   s   e Zd Zee dZdS )ListInboundShipmentsResult)ZShipFromAddressN)r   r   r   r<   r3   ZShipmentDatar   r   r   r   r   Q  s   r   c                   @   s   e Zd Ze ZdS )ListInboundShipmentItemsResultN)r   r   r   r<   ZItemDatar   r   r   r   r   U  s   r   c                   @   s&   e Zd Zee ee e ddZdS )ListInventorySupplyResult)ZEarliestAvailableToPickZLatestAvailableToPick)ZEarliestAvailabilityZSupplyDetailN)r   r   r   r<   r3   ZInventorySupplyListr   r   r   r   r   Y  s   r   c                       sL   e Zd ZdZdd Zdd Zdd Ze fdd	Ze fd
dZ	  Z
S )ComplexAmountr   c                 C   s   d | jt| | jS Nz{0} {1})r   CurrencyCoder   _amountr   r   r   r   r   f  s    zComplexAmount.__repr__c                 C   s   t t| | jS r,   )floatr   r   r   r   r   r   	__float__i  s    zComplexAmount.__float__c                 C   s   t t| | jS r,   )r   r   r   r   r   r   r   r   l  s    zComplexAmount.__str__c                    s4   |d| j fkr d|}t|tt| |||S )Nr   z%Unrecognized tag {0} in ComplexAmount)r   r   r>   r7   r   r{   r   r"   r_   rT   r@   r8   r   r   r{   o  s    
zComplexAmount.startElementc                    s*   || j krt|}tt| ||| d S r,   )r   r   r7   r   r|   r   r"   r#   rT   r8   r   r   r|   v  s    
zComplexAmount.endElement)r   r   r   r   r   r   r   r^   r{   r|   r:   r   r   r8   r   r   c  s   r   c                   @   s   e Zd ZdZdS )ComplexMoneyAmountN)r   r   r   r   r   r   r   r   r   }  s   r   c                       sH   e Zd Zdd Zdd Zdd Ze fddZe fd	d
Z  Z	S )ComplexWeightc                 C   s   d | j| jS r   )r   r   Unitr   r   r   r   r     s    zComplexWeight.__repr__c                 C   s
   t | jS r,   )r   r   r   r   r   r   r     s    zComplexWeight.__float__c                 C   s
   t | jS r,   )r   r   r   r   r   r   r     s    zComplexWeight.__str__c                    s.   |dkrd |}t|tt| |||S )N)r   r   z%Unrecognized tag {0} in ComplexWeight)r   r>   r7   r   r{   r   r8   r   r   r{     s    
zComplexWeight.startElementc                    s(   |dkrt |}tt| ||| d S )Nr   )r   r7   r   r|   r   r8   r   r   r|     s    zComplexWeight.endElement)
r   r   r   r   r   r   r^   r{   r|   r:   r   r   r8   r   r     s   r   c                   @   s   e Zd ZdZdS )	Dimensionr   N)r   r   r   r	   r   r   r   r   r     s   r   c                   @   s0   e Zd ZdZdd Zedd Zedd ZdS )	ComplexDimensions)ZHeightZLengthZWidthZWeightc                    s0    fdd j D }td |}dtdj|S )Nc                    s   g | ]}t  |d qS r,   )r   ).0rI   r   r   r   
<listcomp>  s     z.ComplexDimensions.__repr__.<locals>.<listcomp>xz{0.Value:0.2f}{0[Units]})_dimensionsr   rs   r   r   )r   valuesr   r   r   r     s    
zComplexDimensions.__repr__c                 C   s4   || j krd|}t|t| |t|  d S )Nz)Unrecognized tag {0} in ComplexDimensions)r   r   r>   r    r   r
   r   r   r   r   r{     s    

zComplexDimensions.startElementc                 C   s*   || j krt|pd}t| ||| d S )N0)r   r   r   r|   r   r   r   r   r|     s    
zComplexDimensions.endElementN)r   r   r   r   r   r^   r{   r|   r   r   r   r   r     s   
r   c                   @   s   e Zd ZeeZdS )FulfillmentPreviewItemN)r   r   r   r3   r   EstimatedShippingWeightr   r   r   r   r     s   r   c                   @   s8   e Zd ZeeZeeedZee	Z
eee	dZdS )FulfillmentPreview)r   )ZFulfillmentPreviewItemsN)r   r   r   r3   r   r   r<   r   ZEstimatedFeesr   ZUnfulfillablePreviewItemsZFulfillmentPreviewShipmentsr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )GetFulfillmentPreviewResultN)r   r   r   r<   r   ZFulfillmentPreviewsr   r   r   r   r     s   r   c                   @   s   e Zd Ze ZeeZdS )FulfillmentOrderN)r   r   r   r3   ZDestinationAddressr<   r6   ZNotificationEmailListr   r   r   r   r     s   r   c                   @   s*   e Zd ZeeZee e dZe ZdS )GetFulfillmentOrderResult)ZFulfillmentShipmentItemZFulfillmentShipmentPackageN)r   r   r   r3   r   r<   ZFulfillmentShipmentZFulfillmentOrderItemr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )ListAllFulfillmentOrdersResultN)r   r   r   r<   r   ZFulfillmentOrdersr   r   r   r   r     s   r   c                   @   s   e Zd Ze Zee dZdS )GetPackageTrackingDetailsResult)ZEventAddressN)r   r   r   r3   r   r<   ZTrackingEventsr   r   r   r   r     s   r   c                   @   s   e Zd ZdS )ImageNr   r   r   r   r   r     s   r   c                   @   s,   e Zd ZeeZeeZeeZee	Z
dS )AttributeSetN)r   r   r   r3   r   ZItemDimensionsr   Z	ListPriceZPackageDimensionsr   Z
SmallImager   r   r   r   r     s   r   c                       s(   e Zd Zee dZ fddZ  ZS )ItemAttributes)ZLanguagec                    s2   d}|D ]}t | |t  qtt| j|| d S )N)ZActorZArtistZAuthorZCreatorZDirectorZFeatureZFormatGemTypeMaterialTypeZ	MediaTypeOperatingSystemPlatform)r    r6   r7   r   r$   )r   r*   r!   namesr"   r8   r   r   r$     s    zItemAttributes.__init__)r   r   r   r3   r;   Z	Languagesr$   r:   r   r   r8   r   r     s   r   c                   @   s.   e Zd Zee e dZe Ze Ze ZdS )VariationRelationshipZMarketplaceASINZSKUIdentifierN)	r   r   r   r3   Identifiersr6   r   r   r   r   r   r   r   r     s   r   c                   @   s$   e Zd ZeeZeeZeeZdS )PriceN)r   r   r   r3   r   ZLandedPriceZListingPriceZShippingr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )CompetitivePriceN)r   r   r   r3   r   r   r   r   r   r      s   r   c                   @   s   e Zd ZeeZdS )CompetitivePriceListN)r   r   r   r;   r   r   r   r   r   r     s   r   c                   @   s"   e Zd ZeeZe ZeeZ	dS )CompetitivePricingN)
r   r   r   r3   r   ZCompetitivePricesr6   ZNumberOfOfferListingsr   ZTradeInValuer   r   r   r   r     s   r   c                   @   s   e Zd ZdS )	SalesRankNr   r   r   r   r   r     s   r   c                   @   s    e Zd Zee dZeeZdS )LowestOfferListing)ZShippingTimeN)r   r   r   r3   Z
Qualifiersr   r   r   r   r   r     s   r   c                   @   s   e Zd ZeeZeeZdS )OfferN)r   r   r   r3   r   ZBuyingPricer   ZRegularPricer   r   r   r   r     s   r   c                   @   sn   e Zd ZdZee e dZeeedZeee	dZ
eeZeeedZeeedZeeedZdS )	ProductZns2r   )r   )ZVariationParent)r   )r   )r   N)r   r   r   rY   r3   r   r;   r   ZAttributeSetsr   ZRelationshipsr   r   ZSalesRankingsr   ZLowestOfferListingsr   ZOffersr   r   r   r   r     s(   r   c                   @   s   e Zd ZeeedZdS )ListMatchingProductsResult)r   N)r   r   r   r3   r;   r   ZProductsr   r   r   r   r   2  s   r   c                   @   s   e Zd ZeeZe ZdS )ProductsBulkOperationResultN)r   r   r   r3   r   Errorr   r   r   r   r   6  s   r   c                   @   s   e Zd ZeZdS )ProductsBulkOperationResponseN)r   r   r   r   r   r   r   r   r   r   ;  s   r   c                   @   s   e Zd ZdS )GetMatchingProductResponseNr   r   r   r   r   r   ?  s   r   c                   @   s   e Zd ZdS )GetMatchingProductForIdResultNr   r   r   r   r   r   C  s   r   c                   @   s   e Zd ZeZdS )GetMatchingProductForIdResponseN)r   r   r   r   r   r   r   r   r   r   G  s   r   c                   @   s   e Zd ZdS )#GetCompetitivePricingForSKUResponseNr   r   r   r   r   r   K  s   r   c                   @   s   e Zd ZdS )$GetCompetitivePricingForASINResponseNr   r   r   r   r   r   O  s   r   c                   @   s   e Zd ZdS )$GetLowestOfferListingsForSKUResponseNr   r   r   r   r   r   S  s   r   c                   @   s   e Zd ZdS )%GetLowestOfferListingsForASINResponseNr   r   r   r   r   r   W  s   r   c                   @   s   e Zd ZdS )GetMyPriceForSKUResponseNr   r   r   r   r   r   [  s   r   c                   @   s   e Zd ZdS )GetMyPriceForASINResponseNr   r   r   r   r   r   _  s   r   c                       s   e Zd Z fddZ  ZS )ProductCategoryc                    s&   t | dtt tt| j|| d S )NZParent)r    r3   r   r7   r$   r/   r8   r   r   r$   e  s    zProductCategory.__init__)r   r   r   r$   r:   r   r   r8   r   r   c  s   r   c                   @   s   e Zd ZeeZdS )GetProductCategoriesResultN)r   r   r   r;   r   ZSelfr   r   r   r   r   j  s   r   c                   @   s   e Zd ZdS ) GetProductCategoriesForSKUResultNr   r   r   r   r   r   n  s   r   c                   @   s   e Zd ZdS )!GetProductCategoriesForASINResultNr   r   r   r   r   r   r  s   r   c                   @   s4   e Zd ZeeZe ZeeeeedddZdS )Order)ZPayment)ZPaymentExecutionDetailItemN)	r   r   r   r3   r   
OrderTotalShippingAddressr;   ZPaymentExecutionDetailr   r   r   r   r   v  s   r   c                   @   s   e Zd ZeeedZdS )ListOrdersResult)r   N)r   r   r   r3   r;   r   ZOrdersr   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetOrderResultNr   r   r   r   r   r     s   r   c                   @   sb   e Zd ZeeZeeZeeZeeZeeZ	eeZ
eeZeeZe ZeeZeeZdS )	OrderItemN)r   r   r   r3   r   Z	ItemPriceZShippingPriceZGiftWrapPriceZItemTaxZShippingTaxZGiftWrapTaxZShippingDiscountZPromotionDiscountr6   ZPromotionIdsZCODFeeZCODFeeDiscountr   r   r   r   r     s   r   c                   @   s   e Zd ZeeedZdS )ListOrderItemsResult)r   N)r   r   r   r3   r;   r   Z
OrderItemsr   r   r   r   r     s   r   c                   @   s$   e Zd Zee dZee dZdS )#ListMarketplaceParticipationsResult)ZParticipation)ZMarketplaceN)r   r   r   r3   r;   ZListParticipationsZListMarketplacesr   r   r   r   r     s   r   c                   @   s   e Zd Zee dZdS )ListRecommendationsResult)ZItemIdentifierN)r   r   r   r<   r3   ZListingQualityRecommendationsr   r   r   r   r     s   r   c                   @   s*   e Zd Ze Zee dZee dZdS )Customer)r   )ZMarketplaceDomainN)r   r   r   r3   ZPrimaryContactInfor;   ZShippingAddressListZAssociatedMarketplacesr   r   r   r   r     s   r   c                   @   s   e Zd ZeeedZdS )ListCustomersResult)r   N)r   r   r   r3   r;   r   ZCustomerListr   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetCustomersForCustomerIdResultNr   r   r   r   r   r     s   r   c                   @   s   e Zd ZeeZeeZdS )CartItemN)r   r   r   r3   r   ZCurrentPriceZ	SalePricer   r   r   r   r     s   r   c                   @   s(   e Zd ZeeedZeeedZdS )Cart)r   N)r   r   r   r3   r;   r   ZActiveCartItemListZSavedCartItemListr   r   r   r   r     s   r   c                   @   s   e Zd ZeeedZdS )ListCartsResult)r   N)r   r   r   r3   r;   r   ZCartListr   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetCartsResultNr   r   r   r   r   r     s   r   c                   @   s   e Zd Ze ZdS )DestinationN)r   r   r   r<   ZAttributeListr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS ) ListRegisteredDestinationsResultN)r   r   r   r<   r   ZDestinationListr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )SubscriptionN)r   r   r   r3   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )GetSubscriptionResultN)r   r   r   r3   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )ListSubscriptionsResultN)r   r   r   r<   r   ZSubscriptionListr   r   r   r   r     s   r   c                   @   s8   e Zd Ze ZeeZee dZe Ze Z	e
 ZdS )OrderReferenceDetails)ZPhysicalDestinationN)r   r   r   r3   ZBuyerr   r   r   ZSellerOrderAttributesZOrderReferenceStatusr;   ZConstraintsr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )SetOrderReferenceDetailsResultN)r   r   r   r3   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetOrderReferenceDetailsResultNr   r   r   r   r   r     s   r   c                   @   s*   e Zd ZeeZeeZeeZe ZdS )AuthorizationDetailsN)	r   r   r   r3   r   ZAuthorizationAmountZCapturedAmountZAuthorizationFeeZAuthorizationStatusr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )AuthorizeResultN)r   r   r   r3   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetAuthorizationDetailsResultNr   r   r   r   r   r     s   r   c                   @   s*   e Zd ZeeZeeZeeZe ZdS )CaptureDetailsN)	r   r   r   r3   r   ZCaptureAmountZRefundedAmountZ
CaptureFeeZCaptureStatusr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )CaptureResultN)r   r   r   r3   r   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )GetCaptureDetailsResultNr   r   r   r   r   r     s   r   c                   @   s"   e Zd ZeeZeeZe ZdS )RefundDetailsN)r   r   r   r3   r   ZRefundAmountZFeeRefundedZRefundStatusr   r   r   r   r     s   r   c                   @   s   e Zd ZeeZdS )RefundResultN)r   r   r   r3   r   r   r   r   r   r     s   r   c                   @   s   e Zd ZdS )GetRefundDetailsNr   r   r   r   r   r     s   r   N)kdecimalr   Zboto.compatr   r   rb   r   objectr   r3   r6   r;   r<   rB   r^   r   rR   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   <module>   s   
(	
$	E
			