a
    ä`ê  ã                   @   s,   d d„ Z dd„ Zdd„ Zdd„ Zdd	„ Zd
S )c                 C   s\   d}d}t | ƒ|k r@||t | ƒ k r6|d }|d }q||  } n| t | ƒ| t | ƒ… } | S )NÚ é    Ú0é   )Úlen)ZbininZnoofbitsZzerosÚc© r   úF/users/rsg/observatory/buoy/pml/bin/AMOS2XBinaryCoder-1.0/binstring.pyÚ
bintofield   s    

r	   c                 C   s   t | ƒdd … }|S )Né   )Úbin)ZdatainÚoutputr   r   r   Ú	datatobin   s    r   c                 C   s$   | dk rd}n| dk rd}nd}|S )Né
   Z00éd   r   r   r   )ÚdataintZ	prefixstrr   r   r   Úprefixzeros'   s    r   c                 C   sD   d}d}|t | ƒk r@|ttt| ||d … ƒƒdƒ }|d }q|S )Nr   r   r   é   )r   r	   r   Úord)ZasciistrÚBinaryStringr   r   r   r   ÚstrASCIItoBin4   s    "
r   c           	      C   s¼   d}d}d}g }d}|t | ƒk rb| ||… }t|dƒ}|| }| |¡ |d }|d }|d }qt|ƒ tt|ƒdƒ}t|ƒ t|dd… dƒ}| |¡ t|dd … dƒ}| |¡ |S )Nr   r   r
   é   iðÿÿÿiøÿÿÿ)r   ÚintÚappendÚprintr	   r   )	r   ÚaÚbr   Z
CharStringZchecksumZBinByteZCharByteZchecksumdatar   r   r   ÚiridiumBinChksumB   s*    




r   N)r	   r   r   r   r   r   r   r   r   Ú<module>   s   