Refactored for reservation