Actually if the input is doubled in size one half can be used as a controlling context for the other half.
In general any subset of input space bits can be regarded (or used) as a “controlling gate” for the reminder input bitspace.
The main limitation being input and output spaces are same size.
Which is no longer the case with brainblocks .
There is an explicit context learner class that could be a powerful twist on HTM principles.