withInputSetToOtherInput(letter, other) {
        let r = this._clone();

        r.customContextFromGates = new Map(r.customContextFromGates);

        for (let key of ['Range', 'Default']) {
            let otherVal = r.customContextFromGates.get(`Input ${key} ${other}`);
            if (otherVal !== undefined) {
                r.customContextFromGates.set(`Input ${key} ${letter}`, otherVal);
            } else {
                r.customContextFromGates.delete(`Input ${key} ${letter}`);
            }
        }

        return r;
    }
@param {!string} letter
@param {!string} other
@returns {!CircuitEvalContext}