added check out functionality