text: from sympy.core import sympify
  from sympy.geometry.exceptions import GeometryError
  from entity import GeometryEntity
  
  class Curve(GeometryEntity):
      """
      A curve in space.
  
      Example:
      ========
          >>> from sympy import sin, cos, Symbol
          >>> from sympy.abc import t
          >>> from sympy.geometry import Curve
          >>> C = Curve([sin(t), cos(t)], (t, 0, 2))
          >>> C.functions
          [sin(t), cos(t)]
          >>> C.limits
          (t, 0, 2)
          >>> C.parameter
          t
  
      """
  
      def __new__(cls, function, limits):
          fun = sympify(function)
          if not fun:
              raise GeometryError("%s.__new__ don't know how to handle" % cls.__name__);
          if not isinstance(limits, (list, tuple)) or len(limits) != 3:
              raise ValueError("Limits argument has wrong syntax");
          return GeometryEntity.__new__(cls, fun, limits)
  
      @property
      def functions(self):
          """The functions specifying the curve."""
          return self.__getitem__(0)
  
      @property
      def parameter(self):
          """The curve function variable."""
          return self.__getitem__(1)[0]
  
      @property
      def limits(self):
          """The limits for the curve."""
          return self.__getitem__(1)
  