Solution 04 working