o
    Ü!dž  ã                   @   sR   d dl Z d dlZd dlZd dlmZ e e¡Zdd„ Zdd„ Z	G dd„ de
ƒZdS )	é    N)Úsixc                 C   s   t | ƒ ¡  d S ©N)ÚDynamoDBPaginatorFixÚregister_events)Úevent_emitter© r   úBusr/lib/python3.10/site-packages/awscli/customizations/dynamodb.pyÚregister_dynamodb_paginator_fix   s   r	   c                 K   sH   |   dd ¡}|d u rd S | ¡ D ]\}}d|v r!t |d ¡|d< qd S )NZLastEvaluatedKeyÚB)ÚgetÚitemsÚbase64Ú	b64decode)ÚparsedÚkwargsZlast_evaluated_keyÚkeyÚvalr   r   r   Úparse_last_evaluated_key_binary   s   €þr   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )r   c                 C   s
   || _ d S r   )Ú_event_emitter)Úselfr   r   r   r   Ú__init__)   s   
zDynamoDBPaginatorFix.__init__c                 C   s   | j  d| j¡ d S )Nzcalling-command.dynamodb.*)r   ÚregisterÚ_maybe_register_pagination_fix)r   r   r   r   r   ,   s   ÿz$DynamoDBPaginatorFix.register_eventsc                 K   s   |j r| j dt¡ d S d S )Nzafter-call.dynamodb.*)Zpaginater   r   r   )r   Zparsed_globalsr   r   r   r   r   1   s
   ÿÿz3DynamoDBPaginatorFix._maybe_register_pagination_fixN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   (   s    r   )r   ÚbinasciiÚloggingZawscli.compatr   Ú	getLoggerr   Úloggerr	   r   Úobjectr   r   r   r   r   Ú<module>   s   
