add override functionality