some changes to use case