If I declare an invariant which relies on methods which have contracts leads to: `SystemStackError: stack level too deep`.