Mismatching if conditions fixed
Changing some messages
Make use of transitive linking