
    㢛i                         d dl Z d dlZd dlmZmZ ej        dfdZdZd Zej        eej	        ej
        fej        d ej        ej        fej        d ej        ej        fiZd	 Zd
 ZdS )    N)consts
exceptionsTc                    	 t           |         \  }}} ||           }nS# t          $ r t          d|z            t          $ r+ t          j        }t           |         \  }}} ||           }Y nw xY wt          |          |k    rb|rt          j        }t          ||          }nRt          j	        }t          ||          }t          |          dk    rt          j                    nt          j	        }|g}|||fS )z)Returns tuple(parts, encoding, esm_class)zencoding is not supported: %s   )	ENCODINGSKeyErrorNotImplementedErrorUnicodeErrorr   SMPP_ENCODING_ISO10646lenSMPP_GSMFEAT_UDHImake_parts_encodedSMPP_MSGTYPE_DEFAULTsplit_sequencer   MessageTooLong)	textencodinguse_udhiencodesplit_length	part_sizeencoded_text	esm_classpartss	            [/home/jenkins/workspace/simtester-sanitize/venv/lib/python3.11/site-packages/smpplib/gsm.py
make_partsr   	   s)   
$*3H*='ivd|| N N N!"AH"LMMM $ $ $0*3H*='ivd||	$ <<'' 	20I '|Y??EE 3I"<;;E5zzC /111   /	(I%%s    AA/.A/u(  @£$¥èéùìòÇ
ØøÅåΔ_ΦΓΛΩΠΨΣΘΞÆæßÉ !"#¤%&'()*+,-./0123456789:;<=>?¡ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÑÜ`¿abcdefghijklmnopqrstuvwxyzäöñüà````````````````````^```````````````````{}`````\````````````[~]`|````````````````````````````````````€``````````````````````````c                     	 d                     d t          t          j        |           D                       S # t          $ r t          |           w xY w)z]Performs default GSM 7-bit encoding. Beware it's vendor-specific and not recommended for use.    c              3   ~   K   | ]8}|d k     rt          j        |          ndt          j        |d z
            z   V  9dS )      N)sixint2byte).0indexs     r   	<genexpr>zgsm_encode.<locals>.<genexpr>9   sa       
 
 $)4<<CLWs|ETXL?Y?Y5Y
 
 
 
 
 
r   )joinmapGSM_CHARACTER_TABLEr%   
ValueErrorr
   )	plaintexts    r   
gsm_encoder,   6   sr    &xx 
 
06	BB
 
 
 
 
 	
  & & &9%%%&s	   69 Ac                 ,    |                      d          S )Nz
iso-8859-1r   r   s    r   <lambda>r0   E   s    \1J1J r   c                 ,    |                      d          S )Nz	utf-16-ber.   r/   s    r   r0   r0   F   s    [1I1I r   c           	      f   t          | |          }t          |          dk    rt          j                    t	          j        dd          }d                    dt          j        |          t          j        t          |                    f          fdt          |d          D             S )z"Splits encoded text into SMS partsr   r   r   s    c                 j    g | ]/\  }}d                      t          j        |          |f          0S )r   )r'   r"   r#   )r$   ichunkheaders      r   
<listcomp>z&make_parts_encoded.<locals>.<listcomp>S   s8    bbb81eCHHfcl1oou566bbbr      )start)
r   r   r   r   randomrandintr'   r"   r#   	enumerate)r   r   chunksuidr6   s       @r   r   r   J   s    L)44F
6{{S')))
.C
 
 CXXS(9(93<F;T;TUVVFbbbbyQW_`GaGaGabbbbr   c                 \      fdt          dt                               D             S )z$Splits the sequence into equal partsc                 *    g | ]}||z            S  rA   )r$   r4   r   sequences     r   r7   z"split_sequence.<locals>.<listcomp>X   s&    RRR!HQq9}_%RRRr   r   )ranger   )rB   r   s   ``r   r   r   V   s3    RRRRRuQHy/Q/QRRRRr   )r:   r"   smpplibr   r   SMPP_ENCODING_DEFAULTr   r)   r,   SEVENBIT_LENGTHSEVENBIT_PART_SIZESMPP_ENCODING_ISO88591EIGHTBIT_LENGTHEIGHTBIT_PART_SIZEr   UCS2_LENGTHUCS2_PART_SIZEr   r   r   rA   r   r   <module>rM      s     



 & & & & & & & & %:T  &  &  &  &LJ & & &  :v/EvG`"a
!$J$JFLbdjd}#~
!$I$I6K]_e_t#u		c 	c 	cS S S S Sr   