In a large butcher's shop, a number system is usually used where a customer must take a number when he/she comes in and then has to way for his/her turn. Smaller butcher's shops are also getting more and more busy and are forced to use this system. However, the investment is too big for many of them. Therefore, the local self-employed asks you to write such a system.

Assignment

Your assignment consists of making a class NumberSystem. Both the values on the display and the values on the tickets can be numbers from 1 to 99, and in the beginning of the day, both are 0. Your class must have the following methods:

  1. The constructor __init__ gets the current client and the last ticket as optional parameters.

  2. The methods __str__ and __repr__ prints a string representation of the number system. Look at the data that is printed in the example below for the format.

  3. The method currentClient() prints the value on the display.

  4. The method takeNumber() simulates pulling a number. It prints the next number as a result. Keep in mind that the number must be in the interval 1 to 99 and make sure that no numbers are used twice. If no number is available, the method prints None.

  5. The method nextClient() prints the number of the next client on the display. If there is no next client, this method doesn't do anything. If there is a next client, the method currentClient() must print the next number after calling this method.

Example

>>> number = NumberSystem()
>>> number
NumberSystem(0, 0)
>>> print(number)
Current client: 0, last ticket: 0
>>> number.takeNumber()
1
>>> number.takeNumber()
2
>>> number.nextClient()
>>> number.currentClient()
1
>>> number
NumberSystem(1, 2)

Example

>>> number = NumberSystem(96, 98)
>>> number
NumberSystem(96, 98)
>>> print(number)
Current client: 96, last ticket: 98
>>> number.nextClient()
>>> number.nextClient()
>>> print(number)
Current client: 98, last ticket: 98
>>> number.nextClient()
>>> print(number)
Current client: 98, last ticket: 98
>>> number.takeNumber()
99
>>> number.takeNumber()
1

Example

>>> number = NumberSystem(15, 12)
>>> print(number)
Current client: 15, last ticket: 12
>>> number.takeNumber()
13
>>> number.takeNumber()
14
>>> number.takeNumber()
>>> number.nextClient()
>>> number.takeNumber()
15