#include<bits/stdc++.h>
using namespace std;

#define int long long
#define double long double
double eps = 1e-4;

class point
{
    public :
        double x, y, r;
};

double dist(point a, point b)
{
    double d = (a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y);
    d = sqrtl(d);
    return d; 
}

bool isInside(double circle_x, double circle_y, double rad, double x, double y) 
{
    if(((x - circle_x) * (x - circle_x) + (y - circle_y) * (y - circle_y) - rad * rad) <= eps ) 
        return true; 
    else
        return false; 
} 

bool areCollinear(point a, point b, point c) 
{ 
    double ar = a.x * (b.y - c.y) + b.x * (c.y - a.y) + c.x * (a.y - b.y); 
  
    if(fabs(ar - 0.0) < eps)
        return true;
    else
        return false;
} 

point twoCircle(point a, point b)
{
    point p;
    p.x = (a.x + b.x) / 2;
    p.y = (a.y + b.y) / 2;
    p.r = dist(a, p);
    return p;
}

point threeCircle(point a, point b, point c) 
{ 
    point p;

    double x12 = a.x - b.x; 
    double x13 = a.x - c.x; 
  
    double y12 = a.y - b.y; 
    double y13 = a.y - c.y; 
  
    double y31 = c.y - a.y; 
    double y21 = b.y - a.y; 
  
    double x31 = c.x - a.x; 
    double x21 = b.x - a.x; 
  
    double sx13 = a.x * a.x - c.x * c.x; 
    double sy13 = a.y * a.y - c.y * c.y; 
  
    double sx21 = b.x * b.x - a.x * a.x; 
    double sy21 = b.y * b.y - a.y * a.y; 
  
    double f = ((sx13) * (x12) + (sy13) * (x12) + (sx21) * (x13) + (sy21) * (x13)) 
                    / (2 * ((y31) * (x12) - (y21) * (x13))); 
    double g = ((sx13) * (y12) + (sy13) * (y12) + (sx21) * (y13) + (sy21) * (y13)) 
                    / (2 * ((x31) * (y12) - (x21) * (y13))); 
  
    double cc = - a.x * a.x - a.y * a.y - 2 * g * a.x - 2 * f * a.y; 

    p.x = -g; 
    p.y = -f; 
    p.r = sqrtl(g * g + f * f - cc);

    return p;
} 

signed main()
{
    ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cout << fixed << setprecision(8);

    //int t=1 ; cin>>t ; while(t--)
    {
        int n;
        cin >> n;
        point a[n];
        for(int i=0;i<n;i++)
            cin >> a[i].x >> a[i].y;

        //conider 2 points
        double ans = 1e18;
        for(int i=0;i<n;i++)
        {
            for(int j=i+1;j<n;j++)
            {
                point p = twoCircle(a[i], a[j]);
                // cout << "\nConsidering : " << i << ' ' << j << '\n';
                // cout << "Circle : " << p.x << ' ' << p.y << ' ' << p.r << '\n';

                int f = 1;
                for(int kk=0;kk<n;kk++)
                {
                    bool fc = isInside(p.x, p.y, p.r, a[kk].x, a[kk].y);
                    f &= fc;

                    // if(fc)
                    //     cout << "Inside : " << kk << '\n';
                    // if(!fc)
                    //     cout << "Not inside : " << kk << '\n'; 
                }

                // cout << (f ? "Vaild\n" : "Invalid\n");
                
                if(f)
                    ans = min(ans, p.r);
            }
        }

        //consider 3 points
        for(int i=0;i<n;i++)
        {
            for(int j=i+1;j<n;j++)
            {
                for(int k=j+1;k<n;k++)
                {
                    if(!areCollinear(a[i], a[j], a[k]))
                    {
                        point p = threeCircle(a[i], a[j], a[k]);
                        // cout << "\nConsidering : " << i << ' ' << j << ' '<< k << '\n';
                        // cout << "Circle : " << p.x << ' ' << p.y << ' ' << p.r << '\n';

                        bool f = 1;
                        for(int kk=0;kk<n;kk++)
                        {
                            bool fc = isInside(p.x, p.y, p.r, a[kk].x, a[kk].y);
                            f &= fc;

                            // if(fc)
                            //     cout << "Inside : " << kk << '\n';
                            // if(!fc)
                            //     cout << "Not inside : " << kk << '\n';
                        }

                        // cout << (f ? "Vaild\n" : "Invalid\n");

                        if(f)
                            ans = min(ans, p.r);
                    }
                }
            }
        }

        cout << ans << '\n';


        
    }
    
    cerr << "Time elapsed : " << 1.0 * clock() / CLOCKS_PER_SEC << " sec \n";
    return 0;
}



Measured memory_bytes: 256