using System;
using System.Collections;
using System.Collections.Generic;
class g
{
    static public List<int>[] a;
    static public List<int> b, d;
    static public bool[] c;
    static public int o = 0, n;
    static public bool gotovo;

}

class HelloWorld
{
    struct t
    {
        public int x, y;
    }

    static bool da(t a,t b,t c,t d)
    {
        double m1 = ((double)a.y - (double)b.y) / ((double)a.x - (double)b.x);
        double m2= ((double)c.y - (double)d.y) / ((double)c.x - (double)d.x);
        if (m1==m2) return true; else return false;
    }

    static void Main()
    {
        int n = int.Parse(Console.ReadLine());
        t[] a = new t[n];
        int[] c = new int[4];
        List<string> l=new List<string>();
        string h;
        
        for (int i = 0; i < n; i++)
        {
            string[] s = Console.ReadLine().Split(' ');
            a[i].x = int.Parse(s[0]);
            a[i].y = int.Parse(s[1]);
        }
        h = "";
        for (int i = 0; i < n; i++)
        {
            for(int j = i + 1; j < n; j++)
            {
                for (int m = j + 1; m < n; m++)
                {
                    for (int k = m + 1; k < n; k++)
                    {
                        if (da(a[i], a[j], a[m], a[k]))
                        {
                            c[0] = i;
                            c[1] = j;
                            c[2] = m;
                            c[3] = k;
                            Array.Sort(c);
                            h = Convert.ToString(c[0]) + Convert.ToString(c[1]) + Convert.ToString(c[2]) + Convert.ToString(c[3]);
                            if (!l.Contains(h)) l.Add(h);
                            h = "";
                        } else if (da(a[i], a[m], a[j], a[k]))
                        {
                            c[0] = i;
                            c[1] = j;
                            c[2] = m;
                            c[3] = k;
                            Array.Sort(c);
                            h = Convert.ToString(c[0]) + Convert.ToString(c[1]) + Convert.ToString(c[2]) + Convert.ToString(c[3]);
                            if (!l.Contains(h)) l.Add(h);
                            h = "";
                        } else if (da(a[i], a[k], a[j], a[m]))
                        {
                            c[0] = i;
                            c[1] = j;
                            c[2] = m;
                            c[3] = k;
                            Array.Sort(c);
                            h = Convert.ToString(c[0]) + Convert.ToString(c[1]) + Convert.ToString(c[2]) + Convert.ToString(c[3]);
                            if (!l.Contains(h)) l.Add(h);
                            h = "";
                        }

                    }
                }
            }
        }
        int br = 0;
        foreach (string i in l) br++;
        Console.WriteLine(br);
    }
}