Your context module has 30 query functions. It needs five.

Stop encoding query parameters into function names. Pass them as data instead, and the combinatorial explosion disappears.