In this example, f() function returns 3 values (107, 'hello', and [8, 9, 10]). We can assign each returned value to a variable with a, b, c = f().

The most interesting part is that there is no magic in returning several values. What the function f() does is actually return a single value - a tuple that has 3 elements (107, 'hello', and [8, 9, 10]). When printing the whole returned value with print(f()), we can see that the returned value is actually a tuple (note the parentheses). When a function returns a tuple, we just unpack the values into a, b, and c.

So, in reality, the functions always return a single value - but we can interpret returning a tuple as returning multiple values.

Challenge

Write a function that would return the whole part and the remainder after dividing a by b.

The input contains two integers - a and b.

The program should print 3 lines (call the function 3 times). Each line should contain the whole part after and the remainder after the division of two numbers:

The first line should contain the result for a and b.

The second line should contain the result for a + 1 and b + 1.

The third line should contain the result for a - 1 and b - 1.