The dynamic ride-hailing sharing problem with multiple vehicle types and user classes | Synapse