#D5080. Area of Intersection between Two Circles

    ID: 4221 Type: Default 1000ms 268MiB

Area of Intersection between Two Circles

Area of Intersection between Two Circles

Write a program which prints the area of intersection between given circles c1c1 and c2c2.

Constraints

  • 10,000c1x,c1y,c2x,c2y10,000-10,000 \leq c1x, c1y, c2x, c2y \leq 10,000
  • 1c1r,c2r10,0001 \leq c1r, c2r \leq 10,000

Input

The input is given in the following format.

c1x  c1y  c1rc1x\; c1y\; c1r c2x  c2y  c2rc2x\; c2y\; c2r

c1xc1x, c1yc1y and c1rc1r represent the coordinate and radius of the first circle. c2xc2x, c2yc2y and c2rc2r represent the coordinate and radius of the second circle. All input values are given in integers.

Output

Output the area in a line. The output values should be in a decimal fraction with an error less than 0.000001.

Examples

Input

0 0 1 2 0 2

Output

1.40306643968573875104

Input

1 0 1 0 0 3

Output

3.14159265358979311600

inputFormat

Input

The input is given in the following format.

c1x  c1y  c1rc1x\; c1y\; c1r c2x  c2y  c2rc2x\; c2y\; c2r

c1xc1x, c1yc1y and c1rc1r represent the coordinate and radius of the first circle. c2xc2x, c2yc2y and c2rc2r represent the coordinate and radius of the second circle. All input values are given in integers.

outputFormat

Output

Output the area in a line. The output values should be in a decimal fraction with an error less than 0.000001.

Examples

Input

0 0 1 2 0 2

Output

1.40306643968573875104

Input

1 0 1 0 0 3

Output

3.14159265358979311600

样例

1 0 1
0 0 3
3.14159265358979311600