usecase 7 seems to work
Implemented usecase 9.. small bug still exists