abstract SystemCity = System, City ** { fun RDistance : City -> City -> Int -> Reply ; } ;