Interface now abstract + angle precision