matching and allocation