def __init__( self, curve, x, y, order = None ):
    self.__curve = curve
    self.__x = x
    self.__y = y
    self.__order = order
    # self.curve is allowed to be None only for INFINITY:
    if self.__curve and not self.__curve.contains_point( x, y ):
      raise NoSuchPointError('({},{}) is not on the curve {}'.format(x, y, curve))
    if order: assert self * order == INFINITY
curve, x, y, order; order (optional) is the order of this point.
dataset/ETHPy150Open richardkiss/pycoin/pycoin/ecdsa/ellipticcurve.py/Point.__init__