created ireservationcomponent interface