@@ -0,0 +1,1728 @@
+/* %0A * Licensed to the Apache Software Foundation (ASF) under one or more%0A * contributor license agreements.  See the NOTICE file distributed with%0A * this work for additional information regarding copyright ownership.%0A * The ASF licenses this file to You under the Apache License, Version 2.0%0A * (the %22License%22); you may not use this file except in compliance with%0A * the License.  You may obtain a copy of the License at%0A * %0A *     http://www.apache.org/licenses/LICENSE-2.0%0A * %0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS,%0A * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.%0A * See the License for the specific language governing permissions and%0A * limitations under the License.%0A */%0A%0Apackage org.apache.harmony.text;%0A%0A/**%0A * TODO: type description%0A */%0Apublic class BidiRun %7B%0A    private final int start;%0A%0A    private final int limit;%0A%0A    private final int level;%0A%0A    public BidiRun(int start, int limit, int level) %7B%0A        this.start = start;%0A        this.limit = limit;%0A        this.level = level;%0A    %7D%0A%0A    public int getLevel() %7B%0A        return level;%0A    %7D%0A%0A    public int getLimit() %7B%0A        return limit;%0A    %7D%0A%0A    public int getStart() %7B%0A        return start;%0A    %7D%0A%0A    @Override%0A    public boolean equals(Object o) %7B%0A        if (o == null) %7B%0A            return false;%0A        %7D%0A        if (!(o instanceof BidiRun)) %7B%0A            return false;%0A        %7D%0A        BidiRun other = (BidiRun) o;%0A        return start == other.start && limit == other.limit%0A                && level == other.level;%0A    %7D%0A    %0A    @Override%0A    public int hashCode() %7B%0A        return start %5E limit %5E level;%0A    %7D%0A%7D%0A

Tidy-up equals() and implement a matching hashCode().