class Line extends AUnboundedLine implements ILine {

	@Override
	public final boolean equals(final Object other)
	{
		if (this == other)
		{
			return true;
		}
		if (other == null || !(other instanceof ILine))
		{
			return false;
		}
		
		final ILine that = (ILine) other;
		
		if (this.isValid() && that.isValid())
		{
			return equalsForValid(this, that);
		}
		return equalsForInvalid(this, that);
	}

	private  Line(final IVector2 supportVector, final IVector2 directionVector);

}