a Med@s6dZddlmZddlZeeeeefdddZdS)zDNS GENERATE range conversion.)TupleN)textreturncCs d}d}d}d}d}|r0|ddkr0tjd|D]b}|dkrZ|dkrZt|}d}d}q4|dkrtt|}d}d}q4|r||7}q4tjd |q4|dkrtjd n&|dkrt|}n|dksJt|}|dksJ|dksJ||krtjd |||fS) zConvert the text form of a range in a ``$GENERATE`` statement to an integer. *text*, a ``str``, the textual range in ``$GENERATE`` form. Returns a tuple of three ``int`` values ``(start, stop, step)``. r-z!Start cannot be a negative number/zCould not parse %szno stop value specifiedzstart must be <= stop)dns exception SyntaxErrorintisdigit)rstartstopstepZcurstatecr./usr/lib/python3.9/site-packages/dns/grange.py from_texts<         r)__doc__typingrr strrrrrrrs