Ë
    Ã?Æii	  ã                  óR   — d Z ddlmZ ddl­ ddlmZmZ ddlmZ g d¢Z	d
d„Z
dd„Zy	)a“  Onderwijsnummer (the Dutch student identification number).

The onderwijsnummers (education number) is very similar to the BSN (Dutch
citizen identification number), but is for students without a BSN. It uses a
checksum mechanism similar to the BSN.

More information:

* https://nl.wikipedia.org/wiki/Onderwijsnummer

>>> validate('1012.22.331')
'101222331'
>>> validate('100252333')
Traceback (most recent call last):
    ...
InvalidChecksum: ...
>>> validate('1012.22.3333')
Traceback (most recent call last):
    ...
InvalidLength: ...
>>> validate('2112.22.337')  # number must start with 10
Traceback (most recent call last):
    ...
InvalidFormat: ...
é    )Úannotations)Ú*)ÚchecksumÚcompact)Úisdigits)r   ÚvalidateÚis_validc                óø   — t        | «      } t        | «      rt        | «      dk  r
t        «       ‚| j	                  d«      s
t        «       ‚t        | «      dk7  r
t        «       ‚t        | «      dk7  r
t        «       ‚| S )z¤Check if the number is a valid onderwijsnummer. This checks the length
    and whether the check digit is correct and whether it starts with the
    right sequence.r   Ú10é	   é   )	r   r   ÚintÚInvalidFormatÚ
startswithÚlenÚInvalidLengthr   ÚInvalidChecksum©Únumbers    ú`/var/www/html/myprovider/mon_projet_qr/lib/python3.12/site-packages/stdnum/nl/onderwijsnummer.pyr   r   8   sm   € ô �V‹_€FÜ�FÔœs 6›{¨aÒ/Ü‹oÐØ×Ñ˜TÔ"Ü‹oÐÜ
ˆ6ƒ{�aÒÜ‹oÐÜ�Ó˜1ÒÜÓÐØ€Mó    c                óJ   — 	 t        t        | «      «      S # t        $ r Y yw xY w)z/Check if the number is a valid onderwijsnummer.F)Úboolr   ÚValidationErrorr   s    r   r	   r	   H   s)   € ðÜ”H˜VÓ$Ó%Ð%øÜò Ùðús   ‚ –	"¡"N)r   ÚstrÚreturnr   )r   r   r   r   )Ú__doc__Ú
__future__r   Ústdnum.exceptionsÚstdnum.nl.bsnr   r   Ústdnum.utilr   Ú__all__r   r	   © r   r   ú<module>r$      s)   ðñ(õ4 #ä ß +Ý  ò .€óô r   