In this case I didn't like the way, that the method ended with the return statement. It was a lot of logic to get exactly this behaviour..