Abstract
If a (cusped) surface S admits an ideal triangulation T with no shears, we show an efficient algorithm to give S as a quotient of hypebolic plane by a subgroup of PSL(2, Z). The algorithm runs in time O(n log n), where n is the number of triangles in the triangulation T. The algorithm generalizes to producing fundamental groups of general surfaces and geometric manifolds of higher dimension.