better circle handling