Added some new (and quite hard) test cases.