abstract algebraic curves