Added lots more conditions :)