package org.bouncycastle.crypto.ec;

import org.bouncycastle.math.ec.ECPoint;

public class ECPair
{
    private final ECPoint x;
    private final ECPoint y;

    public ECPair(ECPoint x, ECPoint y)
    {
        this.x = x;
        this.y = y;
    }

    public ECPoint getX()
    {
        return x;
    }

    public ECPoint getY()
    {
        return y;
    }

    public boolean equals(Object obj)
    {
        if (obj instanceof ECPair)
        {
            ECPair other = (ECPair)obj;

            return other.getX().equals(getX()) && other.getY().equals(getY());
        }

        return false;
    }

    public int hashCode()
    {
        return x.hashCode() + 37 * y.hashCode();
    }
}

@@ -390,116 +390,28 @@
 als(
-Object obj)%0A    %7B%0A        if (obj instanceof ECPair)%0A        %7B%0A            ECPair other = (ECPair)obj;%0A
+ECPair other)
 %0A    
+%7B%0A
     
@@ -489,29 +489,121 @@
     
+%7D%0A%0A
     
-%7D%0A%0A        return
+public boolean equals(Object other)%0A    %7B%0A        return other instanceof ECPair ? equals((ECPair)other) :
  fal

Provide typed equals