<s>[INST] algebraicnumber greatest common divisor . concode_field_sep GenPolynomial<C> val concode_elem_sep AlgebraicNumberRing<C> ring concode_elem_sep int isunit concode_field_sep int signum concode_elem_sep boolean isONE concode_elem_sep AlgebraicNumber<C> inverse concode_elem_sep GenPolynomial<C> getVal concode_elem_sep boolean isUnit concode_elem_sep AlgebraicNumber<C> subtract concode_elem_sep AlgebraicNumber<C> sum concode_elem_sep int compareTo concode_elem_sep AlgebraicNumber<C>[] egcd concode_elem_sep AlgebraicNumber<C> monic concode_elem_sep AlgebraicNumber<C> abs concode_elem_sep int hashCode concode_elem_sep AlgebraicNumber<C> negate concode_elem_sep boolean equals concode_elem_sep AlgebraicNumber<C> clone concode_elem_sep boolean isZERO concode_elem_sep String toString concode_elem_sep AlgebraicNumber<C> divide concode_elem_sep AlgebraicNumber<C> multiply concode_elem_sep AlgebraicNumber<C> remainder [/INST] AlgebraicNumber < C > function ( AlgebraicNumber < C > arg0 ) { if ( arg0 . isZERO ( ) ) { return this ; } if ( isZERO ( ) ) { return arg0 ; } if ( isUnit ( ) || arg0 . isUnit ( ) ) { return ring . getONE ( ) ; } return new AlgebraicNumber < C > ( ring , val . gcd ( arg0 . val ) ) ; </s>