usecases revisited :D