I will like to define a 2x1 (1 product free for each one ordered ) or 3x2 (1 product free for each one ordered) or 5+1 (1 product free for each 5 orderd) for a specific product.

For example using a 2x1, when selling 1 units I will pay the full amount but when ordering two I will get two lines:

- One with quantity 1 and the product list_price
- Another with 1 quantity and 0 list price

Using a 3x2, when selling 1 or 2 units I will pay the full amount but when ordering three I will get two lines:

- One with quantity 2 and the product list_price
- Another with 1 quantity and 0 list price

Using a 5+1, when selling up to 4 units I will pay the full amount but when ordering 5 I will get two lines:

- One with quantity 5 and the product list_price
- Another with 1 quantity and 0 list price

How can we achieve this with Tryton?