playing with middleware