Sort:  

Raczej piekły, ale warto było :)