yijunyu/c-to-rust huggingface dataset:
// Original:
public final int compareTo(byte[] bs, int p) {int cmp;cmp = NB.compareUInt32(w1, NB.decodeInt32(bs, p));if (cmp != 0)return cmp;cmp = NB.compareUInt32(w2, NB.decodeInt32(bs, p + 4));if (cmp != 0)return cmp;cmp = NB.compareUInt32(w3, NB.decodeInt32(bs, p + 8));if (cmp != 0)return cmp;cmp = NB.compareUInt32(w4, NB.decodeInt32(bs, p + 12));if (cmp != 0)return cmp;return NB.compareUInt32(w5, NB.decodeInt32(bs, p + 16));}

// Translation:
public int CompareTo(byte[] bs, int p){int cmp;cmp = NB.CompareUInt32(w1, NB.DecodeInt32(bs, p));if (cmp != 0){return cmp;}cmp = NB.CompareUInt32(w2, NB.DecodeInt32(bs, p + 4));if (cmp != 0){return cmp;}cmp = NB.CompareUInt32(w3, NB.DecodeInt32(bs, p + 8));if (cmp != 0){return cmp;}cmp = NB.CompareUInt32(w4, NB.DecodeInt32(bs, p + 12));if (cmp != 0){return cmp;}return NB.CompareUInt32(w5, NB.DecodeInt32(bs, p + 16));}
// Original:
public SendMessageRequest() {super("OnsMqtt", "2019-12-11", "SendMessage", "onsmqtt");setMethod(MethodType.POST);}

// Translation:
public SendMessageRequest(): base("OnsMqtt", "2019-12-11", "SendMessage", "onsmqtt", "openAPI"){Method = MethodType.POST;}
// Original:
public SelectRequest(String selectExpression) {setSelectExpression(selectExpression);}

// Translation:
public SelectRequest(string selectExpression){_selectExpression = selectExpression;}
// Original:
public TopMarginRecord clone() {return copy();}

// Translation:
public override Object Clone(){TopMarginRecord rec = new TopMarginRecord();rec.field_1_margin = this.field_1_margin;return rec;}
// Original:
public GetStaticIpsResult getStaticIps(GetStaticIpsRequest request) {request = beforeClientExecution(request);return executeGetStaticIps(request);}

// Translation:
public virtual GetStaticIpsResponse GetStaticIps(GetStaticIpsRequest request){var options = new InvokeOptions();options.RequestMarshaller = GetStaticIpsRequestMarshaller.Instance;options.ResponseUnmarshaller = GetStaticIpsResponseUnmarshaller.Instance;return Invoke<GetStaticIpsResponse>(request, options);}
// Original:
public String toString() {final StringBuilder b = new StringBuilder();final int sectionCount = getSectionCount();b.append(getClass().getName());b.append('[');b.append("byteOrder: ");b.append(getByteOrder());b.append(", classID: ");b.append(getClassID());b.append(", format: ");b.append(getFormat());b.append(", OSVersion: ");b.append(getOSVersion());b.append(", sectionCount: ");b.append(sectionCount);b.append(", sections: [\n");for (Section section: getSections()) {b.append(section.toString(getPropertySetIDMap()));}b.append(']');b.append(']');return b.toString();}

// Translation:
public override String ToString(){StringBuilder b = new StringBuilder();int sectionCount = SectionCount;b.Append(GetType().Name);b.Append('[');b.Append("byteOrder: ");b.Append(ByteOrder);b.Append(", classID: ");b.Append(ClassID);b.Append(", format: ");b.Append(Format);b.Append(", OSVersion: ");b.Append(OSVersion);b.Append(", sectionCount: ");b.Append(sectionCount);b.Append(", sections: [\n");foreach (Section section in Sections){b.Append(section.ToString());}b.Append(']');b.Append(']');return b.ToString();}
// Original:
public int stem(char s[], int len) {if (len < 4) return len;final int origLen = len;len = rule0(s, len);len = rule1(s, len);len = rule2(s, len);len = rule3(s, len);len = rule4(s, len);len = rule5(s, len);len = rule6(s, len);len = rule7(s, len);len = rule8(s, len);len = rule9(s, len);len = rule10(s, len);len = rule11(s, len);len = rule12(s, len);len = rule13(s, len);len = rule14(s, len);len = rule15(s, len);len = rule16(s, len);len = rule17(s, len);len = rule18(s, len);len = rule19(s, len);len = rule20(s, len);if (len == origLen)len = rule21(s, len);return rule22(s, len);}

// Translation:
public virtual int Stem(char[] s, int len){if (len < 4) {return len;}int origLen = len;len = Rule0(s, len);len = Rule1(s, len);len = Rule2(s, len);len = Rule3(s, len);len = Rule4(s, len);len = Rule5(s, len);len = Rule6(s, len);len = Rule7(s, len);len = Rule8(s, len);len = Rule9(s, len);len = Rule10(s, len);len = Rule11(s, len);len = Rule12(s, len);len = Rule13(s, len);len = Rule14(s, len);len = Rule15(s, len);len = Rule16(s, len);len = Rule17(s, len);len = Rule18(s, len);len = Rule19(s, len);len = Rule20(s, len);if (len == origLen){len = Rule21(s, len);}return Rule22(s, len);}
// Original:
public CreateStreamingURLResult createStreamingURL(CreateStreamingURLRequest request) {request = beforeClientExecution(request);return executeCreateStreamingURL(request);}

// Translation:
public virtual CreateStreamingURLResponse CreateStreamingURL(CreateStreamingURLRequest request){var options = new InvokeOptions();options.RequestMarshaller = CreateStreamingURLRequestMarshaller.Instance;options.ResponseUnmarshaller = CreateStreamingURLResponseUnmarshaller.Instance;return Invoke<CreateStreamingURLResponse>(request, options);}
// Original:
public IBSimilarity(Distribution distribution,Lambda lambda,Normalization normalization) {this.distribution = distribution;this.lambda = lambda;this.normalization = normalization;}

// Translation:
public IBSimilarity(Distribution distribution, Lambda lambda, Normalization normalization){this.m_distribution = distribution;this.m_lambda = lambda;this.m_normalization = normalization;}
// Original:
public GetBatchPredictionResult getBatchPrediction(GetBatchPredictionRequest request) {request = beforeClientExecution(request);return executeGetBatchPrediction(request);}

// Translation:
public virtual GetBatchPredictionResponse GetBatchPrediction(GetBatchPredictionRequest request){var options = new InvokeOptions();options.RequestMarshaller = GetBatchPredictionRequestMarshaller.Instance;options.ResponseUnmarshaller = GetBatchPredictionResponseUnmarshaller.Instance;return Invoke<GetBatchPredictionResponse>(request, options);}
// Original:
public StartInstancesResult startInstances(StartInstancesRequest request) {request = beforeClientExecution(request);return executeStartInstances(request);}

// Translation:
public virtual StartInstancesResponse StartInstances(StartInstancesRequest request){var options = new InvokeOptions();options.RequestMarshaller = StartInstancesRequestMarshaller.Instance;options.ResponseUnmarshaller = StartInstancesResponseUnmarshaller.Instance;return Invoke<StartInstancesResponse>(request, options);}
// Original:
public DescribeLoadBalancerAttributesResult describeLoadBalancerAttributes(DescribeLoadBalancerAttributesRequest request) {request = beforeClientExecution(request);return executeDescribeLoadBalancerAttributes(request);}

// Translation:
public virtual DescribeLoadBalancerAttributesResponse DescribeLoadBalancerAttributes(DescribeLoadBalancerAttributesRequest request){var options = new InvokeOptions();options.RequestMarshaller = DescribeLoadBalancerAttributesRequestMarshaller.Instance;options.ResponseUnmarshaller = DescribeLoadBalancerAttributesResponseUnmarshaller.Instance;return Invoke<DescribeLoadBalancerAttributesResponse>(request, options);}
// Original:
public Filter(int type, long size, InputStream in) {this.type = type;this.size = size;this.in = in;}

// Translation:
public Filter(int type, long size, InputStream @in){this.type = type;this.size = size;this.@in = @in;}
// Original:
public String getBaseForm() {return dictionary.getBaseForm(wordId, surfaceForm, offset, length);}

// Translation:
public virtual string GetBaseForm(){return dictionary.GetBaseForm(wordId, surfaceForm, offset, length);}
// Original:
public Query makeLuceneQueryNoBoost(BasicQueryFactory qf) {if (fieldNames.size() == 1) { return q.makeLuceneQueryFieldNoBoost(fieldNames.get(0), qf);} else { List<SrndQuery> queries = new ArrayList<>();Iterator<String> fni = getFieldNames().listIterator();SrndQuery qc;while (fni.hasNext()) {qc = q.clone();queries.add( new FieldsQuery( qc, fni.next(), fieldOp));}OrQuery oq = new OrQuery(queries,true ,OR_OPERATOR_NAME);return oq.makeLuceneQueryField(null, qf);}}

// Translation:
public virtual Search.Query MakeLuceneQueryNoBoost(BasicQueryFactory qf){if (fieldNames.Count == 1){ return q.MakeLuceneQueryFieldNoBoost(fieldNames.FirstOrDefault(), qf);}else{ List<SrndQuery> queries = new List<SrndQuery>();foreach (var fieldName in fieldNames){var qc = (SrndQuery)q.Clone();queries.Add(new FieldsQuery(qc, fieldName, fieldOp));}OrQuery oq = new OrQuery(queries,true ,orOperatorName);return oq.MakeLuceneQueryField(null, qf);}}
// Original:
public SetVisibleToAllUsersResult setVisibleToAllUsers(SetVisibleToAllUsersRequest request) {request = beforeClientExecution(request);return executeSetVisibleToAllUsers(request);}

// Translation:
public virtual SetVisibleToAllUsersResponse SetVisibleToAllUsers(SetVisibleToAllUsersRequest request){var options = new InvokeOptions();options.RequestMarshaller = SetVisibleToAllUsersRequestMarshaller.Instance;options.ResponseUnmarshaller = SetVisibleToAllUsersResponseUnmarshaller.Instance;return Invoke<SetVisibleToAllUsersResponse>(request, options);}
// Original:
public GetBotResult getBot(GetBotRequest request) {request = beforeClientExecution(request);return executeGetBot(request);}

// Translation:
public virtual GetBotResponse GetBot(GetBotRequest request){var options = new InvokeOptions();options.RequestMarshaller = GetBotRequestMarshaller.Instance;options.ResponseUnmarshaller = GetBotResponseUnmarshaller.Instance;return Invoke<GetBotResponse>(request, options);}
// Original:
public UpdateApnsSandboxChannelResult updateApnsSandboxChannel(UpdateApnsSandboxChannelRequest request) {request = beforeClientExecution(request);return executeUpdateApnsSandboxChannel(request);}

// Translation:
public virtual UpdateApnsSandboxChannelResponse UpdateApnsSandboxChannel(UpdateApnsSandboxChannelRequest request){var options = new InvokeOptions();options.RequestMarshaller = UpdateApnsSandboxChannelRequestMarshaller.Instance;options.ResponseUnmarshaller = UpdateApnsSandboxChannelResponseUnmarshaller.Instance;return Invoke<UpdateApnsSandboxChannelResponse>(request, options);}
// Original:
public CreateRouteResult createRoute(CreateRouteRequest request) {request = beforeClientExecution(request);return executeCreateRoute(request);}

// Translation:
public virtual CreateRouteResponse CreateRoute(CreateRouteRequest request){var options = new InvokeOptions();options.RequestMarshaller = CreateRouteRequestMarshaller.Instance;options.ResponseUnmarshaller = CreateRouteResponseUnmarshaller.Instance;return Invoke<CreateRouteResponse>(request, options);}
// Original:
public FreeRefFunction findFunction(String name) {FreeRefFunction func = super.findFunction(name);if (func != null) {int idx = getFunctionIndex(name);_funcMap.put(idx, name);}return func;}

// Translation:
public override FreeRefFunction FindFunction(String name){FreeRefFunction func = base.FindFunction(name);if (func != null){int idx = GetFunctionIndex(name);_funcMap[idx] = name;}return func;}
// Original:
public boolean atMinValue() {return value == minValue;}

// Translation:
public virtual bool AtMinValue(){return value == minValue;}
// Original:
public TerminateInstanceInAutoScalingGroupResult terminateInstanceInAutoScalingGroup(TerminateInstanceInAutoScalingGroupRequest request) {request = beforeClientExecution(request);return executeTerminateInstanceInAutoScalingGroup(request);}

// Translation:
public virtual TerminateInstanceInAutoScalingGroupResponse TerminateInstanceInAutoScalingGroup(TerminateInstanceInAutoScalingGroupRequest request){var options = new InvokeOptions();options.RequestMarshaller = TerminateInstanceInAutoScalingGroupRequestMarshaller.Instance;options.ResponseUnmarshaller = TerminateInstanceInAutoScalingGroupResponseUnmarshaller.Instance;return Invoke<TerminateInstanceInAutoScalingGroupResponse>(request, options);}
// Original:
public String toString() {StringBuilder buffer = new StringBuilder();buffer.append("[DVAL]\n");buffer.append("    .options      = ").append(getOptions()).append('\n');buffer.append("    .horizPos     = ").append(getHorizontalPos()).append('\n');buffer.append("    .vertPos      = ").append(getVerticalPos()).append('\n');buffer.append("    .comboObjectID   = ").append(Integer.toHexString(getObjectID())).append("\n");buffer.append("    .DVRecordsNumber = ").append(Integer.toHexString(getDVRecNo())).append("\n");buffer.append("[/DVAL]\n");return buffer.toString();}

// Translation:
public override String ToString(){StringBuilder buffer = new StringBuilder();buffer.Append("[DVAL]\n");buffer.Append("    .options      = ").Append(this.Options).Append('\n');buffer.Append("    .horizPos     = ").Append(this.HorizontalPos).Append('\n');buffer.Append("    .vertPos      = ").Append(this.VerticalPos).Append('\n');buffer.Append("    .comboObjectID   = ").Append(StringUtil.ToHexString(this.ObjectID)).Append("\n");buffer.Append("    .DVRecordsNumber = ").Append(StringUtil.ToHexString(this.DVRecNo)).Append("\n");buffer.Append("[/DVAL]\n");return buffer.ToString();}
// Original:
public static Token newToken(int ofKind, String image){switch(ofKind){default : return new Token(ofKind, image);}}

// Translation:
public static Token NewToken(int ofKind, string image){switch (ofKind){default: return new Token(ofKind, image);}}
// Original:
public ATNConfig(ATNState state,int alt,PredictionContext context,SemanticContext semanticContext){this.state = state;this.alt = alt;this.context = context;this.semanticContext = semanticContext;}

// Translation:
public ATNConfig(ATNState state,int alt,PredictionContext context,SemanticContext semanticContext){this.state = state;this.alt = alt;this.context = context;this.semanticContext = semanticContext;}
// Original:
public DataValidationConstraint createFormulaListConstraint(String listFormula) {return DVConstraint.createFormulaListConstraint(listFormula);}

// Translation:
public IDataValidationConstraint CreateFormulaListConstraint(String listFormula){return DVConstraint.CreateFormulaListConstraint(listFormula);}
// Original:
public GlobalReplicationGroup failoverGlobalReplicationGroup(FailoverGlobalReplicationGroupRequest request) {request = beforeClientExecution(request);return executeFailoverGlobalReplicationGroup(request);}

// Translation:
public virtual FailoverGlobalReplicationGroupResponse FailoverGlobalReplicationGroup(FailoverGlobalReplicationGroupRequest request){var options = new InvokeOptions();options.RequestMarshaller = FailoverGlobalReplicationGroupRequestMarshaller.Instance;options.ResponseUnmarshaller = FailoverGlobalReplicationGroupResponseUnmarshaller.Instance;return Invoke<FailoverGlobalReplicationGroupResponse>(request, options);}
// Original:
public BatchPutAttributesResult batchPutAttributes(BatchPutAttributesRequest request) {request = beforeClientExecution(request);return executeBatchPutAttributes(request);}

// Translation:
public virtual BatchPutAttributesResponse BatchPutAttributes(BatchPutAttributesRequest request){var options = new InvokeOptions();options.RequestMarshaller = BatchPutAttributesRequestMarshaller.Instance;options.ResponseUnmarshaller = BatchPutAttributesResponseUnmarshaller.Instance;return Invoke<BatchPutAttributesResponse>(request, options);}
// Original:
public long get(int index) {final int o = index >>> 1;final int b = index & 1;final int shift = b << 5;return (blocks[o] >>> shift) & 4294967295L;}

// Translation:
public override long Get(int index){int o = (int)((uint)index >> 1);int b = index & 1;int shift = b << 5;return ((long)((ulong)blocks[o] >> shift)) & 4294967295L;}
// Original:
public int execute(StringBuilder buf) {return index;}

// Translation:
public virtual int Execute(StringBuilder buf){return index;}
// Original:
public int remove(Object key) {boolean hashedOk;int index, next, hash;int result;Object object;index = next = findIndex(key, keys);if (keys[index] != key) {return -1;}result = values[index];int length = keys.length;while (true) {next = (next + 2) % length;object = keys[next];if (object == null) {break;}hash = getModuloHash(object, length);hashedOk = hash > index;if (next < index) {hashedOk = hashedOk || (hash <= next);} else {hashedOk = hashedOk && (hash <= next);}if (!hashedOk) {keys[index] = object;values[index] = values[next];index = next;}}size--;keys[index] = null;values[index] = -1;return result;}

// Translation:
public int remove(object key){bool hashedOk;int index;int next;int hash;int result;object @object;index = next = findIndex(key, keys);if (keys[index] != key){return -1;}result = values[index];int length = keys.Length;while (true){next = (next + 2) % length;@object = keys[next];if (@object == null){break;}hash = getModuloHash(@object, length);hashedOk = hash > index;if (next < index){hashedOk = hashedOk || (hash <= next);}else{hashedOk = hashedOk && (hash <= next);}if (!hashedOk){keys[index] = @object;values[index] = values[next];index = next;}}size--;keys[index] = null;values[index] = -1;return result;}
// Original:
public synchronized void setMaxMergesAndThreads(int maxMergeCount, int maxThreadCount) {if (maxMergeCount == AUTO_DETECT_MERGES_AND_THREADS && maxThreadCount == AUTO_DETECT_MERGES_AND_THREADS) {this.maxMergeCount = AUTO_DETECT_MERGES_AND_THREADS;this.maxThreadCount = AUTO_DETECT_MERGES_AND_THREADS;} else if (maxMergeCount == AUTO_DETECT_MERGES_AND_THREADS) {throw new IllegalArgumentException("both maxMergeCount and maxThreadCount must be AUTO_DETECT_MERGES_AND_THREADS");} else if (maxThreadCount == AUTO_DETECT_MERGES_AND_THREADS) {throw new IllegalArgumentException("both maxMergeCount and maxThreadCount must be AUTO_DETECT_MERGES_AND_THREADS");} else {if (maxThreadCount < 1) {throw new IllegalArgumentException("maxThreadCount should be at least 1");}if (maxMergeCount < 1) {throw new IllegalArgumentException("maxMergeCount should be at least 1");}if (maxThreadCount > maxMergeCount) {throw new IllegalArgumentException("maxThreadCount should be <= maxMergeCount (= " + maxMergeCount + ")");}this.maxThreadCount = maxThreadCount;this.maxMergeCount = maxMergeCount;}}

// Translation:
public virtual void SetMaxMergesAndThreads(int maxMergeCount, int maxThreadCount){if (maxThreadCount < 1){throw new System.ArgumentException("maxThreadCount should be at least 1");}if (maxMergeCount < 1){throw new System.ArgumentException("maxMergeCount should be at least 1");}if (maxThreadCount > maxMergeCount){throw new System.ArgumentException("maxThreadCount should be <= maxMergeCount (= " + maxMergeCount + ")");}this.maxThreadCount = maxThreadCount;this.maxMergeCount = maxMergeCount;}
// Original:
public final DoubleBuffer put(double[] src) {return put(src, 0, src.length);}

// Translation:
public java.nio.DoubleBuffer put(double[] src){return put(src, 0, src.Length);}
// Original:
public final Collection<Ref> getRefs() {return advertisedRefs.values();}

// Translation:
public ICollection<Ref> GetRefs(){return advertisedRefs.Values;}
// Original:
public DocFreqValueSource(String field, String val, String indexedField, BytesRef indexedBytes) {this.field = field;this.val = val;this.indexedField = indexedField;this.indexedBytes = indexedBytes;}

// Translation:
public DocFreqValueSource(string field, string val, string indexedField, BytesRef indexedBytes){this.m_field = field;this.m_val = val;this.m_indexedField = indexedField;this.m_indexedBytes = indexedBytes;}
// Original:
public String getSegmentsFileName() {return IndexFileNames.fileNameFromGeneration(IndexFileNames.SEGMENTS,"",lastGeneration);}

// Translation:
public string GetSegmentsFileName(){return IndexFileNames.FileNameFromGeneration(IndexFileNames.SEGMENTS, "", lastGeneration);}
// Original:
public Listener(String protocol, Integer loadBalancerPort, Integer instancePort) {setProtocol(protocol);setLoadBalancerPort(loadBalancerPort);setInstancePort(instancePort);}

// Translation:
public Listener(string protocol, int loadBalancerPort, int instancePort){_protocol = protocol;_loadBalancerPort = loadBalancerPort;_instancePort = instancePort;}
// Original:
public GetCurrentUserResult getCurrentUser(GetCurrentUserRequest request) {request = beforeClientExecution(request);return executeGetCurrentUser(request);}

// Translation:
public virtual GetCurrentUserResponse GetCurrentUser(GetCurrentUserRequest request){var options = new InvokeOptions();options.RequestMarshaller = GetCurrentUserRequestMarshaller.Instance;options.ResponseUnmarshaller = GetCurrentUserResponseUnmarshaller.Instance;return Invoke<GetCurrentUserResponse>(request, options);}
// Original:
public String toString() {return "ObjectDirectory[" + getDirectory() + "]"; }

// Translation:
public override string ToString(){return "ObjectDirectory[" + GetDirectory() + "]";}
// Original:
public IllegalFormatWidthException(int w) {this.w = w;}

// Translation:
public IllegalFormatWidthException(int w){this.w = w;}
// Original:
public String toToken() {return this.token;}

// Translation:
public virtual string ToToken(){return this.token;}
// Original:
public UpdatePhoneNumberResult updatePhoneNumber(UpdatePhoneNumberRequest request) {request = beforeClientExecution(request);return executeUpdatePhoneNumber(request);}

// Translation:
public virtual UpdatePhoneNumberResponse UpdatePhoneNumber(UpdatePhoneNumberRequest request){var options = new InvokeOptions();options.RequestMarshaller = UpdatePhoneNumberRequestMarshaller.Instance;options.ResponseUnmarshaller = UpdatePhoneNumberResponseUnmarshaller.Instance;return Invoke<UpdatePhoneNumberResponse>(request, options);}
// Original:
public final IndexableField getField(String name) {for (IndexableField field : fields) {if (field.name().equals(name)) {return field;}}return null;}

// Translation:
public IIndexableField GetField(string name){foreach (IIndexableField field in fields){if (field.Name.Equals(name, StringComparison.Ordinal)){return field;}}return null;}
// Original:
public DisableDomainTransferLockResult disableDomainTransferLock(DisableDomainTransferLockRequest request) {request = beforeClientExecution(request);return executeDisableDomainTransferLock(request);}

// Translation:
public virtual DisableDomainTransferLockResponse DisableDomainTransferLock(DisableDomainTransferLockRequest request){var options = new InvokeOptions();options.RequestMarshaller = DisableDomainTransferLockRequestMarshaller.Instance;options.ResponseUnmarshaller = DisableDomainTransferLockResponseUnmarshaller.Instance;return Invoke<DisableDomainTransferLockResponse>(request, options);}
// Original:
public PrintHeadersRecord clone() {return copy();}

// Translation:
public override Object Clone(){PrintHeadersRecord rec = new PrintHeadersRecord();rec.field_1_print_headers = field_1_print_headers;return rec;}
// Original:
public UpdateDataSourceResult updateDataSource(UpdateDataSourceRequest request) {request = beforeClientExecution(request);return executeUpdateDataSource(request);}

// Translation:
public virtual UpdateDataSourceResponse UpdateDataSource(UpdateDataSourceRequest request){var options = new InvokeOptions();options.RequestMarshaller = UpdateDataSourceRequestMarshaller.Instance;options.ResponseUnmarshaller = UpdateDataSourceResponseUnmarshaller.Instance;return Invoke<UpdateDataSourceResponse>(request, options);}
// Original:
public int popMode() {if ( _modeStack.isEmpty() ) throw new EmptyStackException();if ( LexerATNSimulator.debug ) System.out.println("popMode back to "+ _modeStack.peek());mode( _modeStack.pop() );return _mode;}

// Translation:
public virtual int PopMode(){if (_modeStack.Count == 0){throw new InvalidOperationException();}int mode = _modeStack.Pop();Mode(mode);return _mode;}