Fundamental theorem of finitely generated abelian groups