
    v                     F    d  Z d Zd Zd Zd Zd Zd Zd Zd Zd	 Z	d
 Z
y)c                     t        | t              rt        d      t        |       }|j                  dkD  rt        d      |S )Nz8Unicode-objects must be encoded before calculating a CRC   zBuffer must be single dimension)
isinstancestr	TypeError
memoryviewndimBufferError)in_objmvs     2lib/third_party/gcloud_crcmod/python3/_crcfunpy.py_get_buffer_viewr      s>    &#RSS	F	B	ww{;<<I    c                 `    t        |       }|dz  }|j                         D ]
  }|||z     } |S N   r   tobytesdatacrctabler   xs        r   _crc8r   &   7    	$	B
*CZZ\AGn Jr   c                 `    t        |       }|dz  }|j                         D ]
  }|||z     } |S r   r   r   s        r   _crc8rr   -   r   r   c                 ~    t        |       }|dz  }|j                         D ]  }|||dz	  dz  z     |dz  dz  z  } |S )N     r   i   r   r   s        r   _crc16r    4   sO    	$	B
,CZZ\A#q&D)*sax6.AB Jr   c                 r    t        |       }|dz  }|j                         D ]  }|||dz  z     |dz	  z  } |S )Nr   r   r   r   r   s        r   _crc16rr"   ;   sF    	$	B
,CZZ\At$%2 Jr   c                 ~    t        |       }|dz  }|j                         D ]  }|||dz	  dz  z     |dz  dz  z  } |S )N    r   r   i  r   r   s        r   _crc24r&   B   sO    	$	B
.CZZ\Ab4()cQh(-BC Jr   c                 r    t        |       }|dz  }|j                         D ]  }|||dz  z     |dz	  z  } |S )Nr$   r   r   r   r   s        r   _crc24rr(   I   sF    	$	B
.CZZ\At$%2 Jr   c                 ~    t        |       }|dz  }|j                         D ]  }|||dz	  dz  z     |dz  dz  z  } |S )N       r   r   l     r   r   s        r   _crc32r,   P   sQ    	$	B


CZZ\A#r'T)*+qJ/FG Jr   c                 r    t        |       }|dz  }|j                         D ]  }|||dz  z     |dz	  z  } |S )Nr*   r   r   r   r   s        r   _crc32rr.   W   sG    	$	B


CZZ\At$%2 Jr   c                 ~    t        |       }|dz  }|j                         D ]  }|||dz	  dz  z     |dz  dz  z  } |S )N    8   r   r   l     r   r   s        r   _crc64r2   ^   sS    	$	B
"
"CZZ\A#r'T)*+q<N/NO Jr   c                 r    t        |       }|dz  }|j                         D ]  }|||dz  z     |dz	  z  } |S )Nr0   r   r   r   r   s        r   _crc64rr4   e   sH    	$	B
"
"CZZ\At$%2 Jr   N)r   r   r   r    r"   r&   r(   r,   r.   r2   r4    r   r   <module>r6      s<   :r   