A linear time algorithm for embedding graphs in an arbitrary surface - Mohar, Bojan (Univ. of Ljubljana, Inst. of Math., Physics and Mechanics, Dep. of Math., 1995)