E - Círculos

Languages: C, C++, Java, Pascal, Python, Tiger, JavaScript, Haskell, C#
Time & Memory limits: (details)

Un grupo de niños están dibujando en el parque. Primero, ellos dibujan algunos círculos y luego pintan de un color diferente cada región obtenida. Para ello es necesario saber la cantidad de regiones que se forman luego de dibujar todos los círculos.

Input

La primera línea de la entrada contiene un único entero $n$ ($0 \le n \le 500$), la cantidad de círculos. Luego siguen $n$ íneas, cada una con tres enteros $x_i, y_i, r_i$, indicando que el $i$-ésimo círculo dibujado tiene su centro en el punto $(x_i,y_i)$ $(|x_i|,|y_i| \le 1000)$ y radio $r_i$ $(0 < r_i \le 1000)$.

Output

Imprima un único entero: la cantidad de regiones en los que los círculos dividen al plano.

Sample test(s)

Input
1 5 7 10
Output
2
Input
2 0 0 5 10 0 5
Output
3
Input
3 0 0 7 10 10 7 0 10 8
Output
6