make a new input report parser that is more efficient and handles all cases of bit lengths