please feel free to rename your "matchmaker" to STOMP-MAKER, what i see i no match-maker.
how is your logic designed? how can the logic create such a game? 0 support heroes on one side! ABS. 0 support heroes!!!! how is that possible?
here is the an idea
@Yosh! , please consider it:
mmr = 3000 - some arb. mmr number.
pick(count=2, selected_class=support, play_stype=support, range-low=2500, range-high=3500)
pick(count=4, selected_class=any_but_support, play_style=carry, range-low=2500, range-high=3500)
you can play with range-low/high if matchmaker timing keeps going up with some time function - i hope you know and learnt such things in school
@Yoshi (5th grade maybe?)

feel free to guess who won this stomp that your "nobble prize" winner logic made))
run some algorithm to analyze the games so you can find the player's game style, if they spend a lot of time:
1. farming, building damage items, etc = carry
2. healing, bulding support items = support
you can categorize everyone who go mixed, as mixed and select 1-2 as mixed not more since they disbalance the games.
pick(count=1, selected_class=mixed, play_style=mixed, range-low=2500, range-high=3500)